Я создаю расширяемое табличное представление, когда мы нажимаем любую ячейку, которую должна расширять соответствующая ячейка, если мы щелкнем по той же ячейке, что она должна рухнуть. Превосходно работает. В каждой ячейке у меня есть элемент пользовательского интерфейса, который берется в пользовательской ячейке. Моя проблема заключается в том, что когда я нажал последнюю ячейку, она показывает элементы, но когда я нажимаю на вышеуказанные ячейки, элементы пользовательского интерфейса не отображают его, показывая пустое. Вот мое, что я пробовал в didSelectRowAtIndexPath.DidselectRowAtIndexPath работает для выбранной ячейки в tableview
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
// selectedIndex = indexPath.row;
[tableView deselectRowAtIndexPath:indexPath animated:YES];
if ([_expandedCells containsObject:indexPath])
{
[_expandedCells removeObject:indexPath];
}
else
{
if ([_expandedCells count])
{
[_expandedCells removeObjectAtIndex:0];
}
[_expandedCells addObject:indexPath];
}
// [self.voicemailTable reloadRowsAtIndexPaths:[NSArray arrayWithObjects:indexPath, nil] withRowAnimation:UITableViewRowAnimationFade];
// [self.voicemailTable reloadRowsAtIndexPaths:[self.voicemailTable indexPathsForVisibleRows] withRowAnimation:UITableViewRowAnimationFade];
[tableView beginUpdates];
[tableView endUpdates];
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
CGFloat kExpandedCellHeight = 150.0f;
CGFloat kNormalCellHeigh = 60.0f;
if ([_expandedCells containsObject:indexPath])
{
customCell.playBtn.hidden = NO;
customCell.minimumLbl.hidden = NO;
customCell.maximumLbl.hidden = NO;
customCell.sliderBG.hidden = NO;
customCell.slider.hidden = NO;
return kExpandedCellHeight;
}
else
{
customCell.playBtn.hidden = YES;
customCell.minimumLbl.hidden = YES;
customCell.maximumLbl.hidden = YES;
customCell.sliderBG.hidden = YES;
customCell.slider.hidden = YES;
return kNormalCellHeigh;
}
}
Это то, что я пытаюсь показать после выбора ячейки в таблице. Здесь _expandableCells является NSmutableArray. Заранее спасибо
Настроена делегат и источник данных для Tableview? – iOSNoob
почему вы вызываете эту строку [_expandedCells removeObjectAtIndex: 0]; ? – YuviGr
Да, я установил делегат и источник данных для tableview @iOSNoob – svs