我想在每个单元格选择的小视图中打开更多信息,比如扩展视图单元格。我也在进行屏幕截图。我无法解决这个问题的帮助。如何做到这一点!
我正在使用下面的代码,它工作正常,但如何显示特定单元格位置的隐藏视图
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
// Deselect cell
[tableView deselectRowAtIndexPath:indexPath animated:TRUE];
// Toggle 'selected' state
BOOL isSelected = ![self cellIsSelected:indexPath];
// Store cell 'selected' state keyed on indexPath
NSNumber *selectedIndex = [NSNumber numberWithBool:isSelected];
[selectedIndexes setObject:selectedIndex forKey:indexPath];
// This is where magic happens...
[tbleLectures beginUpdates];
[tbleLectures endUpdates];
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
{
// If our cell is selected, return double height
if([self cellIsSelected:indexPath]) {
return kCellHeight * 2.0;
// return 44;
}
// Cell isn't selected so return single height
return kCellHeight;
}
答案 0 :(得分:0)
您可以重新加载您的tableview以使其生效或仅重新加载tableView:didSelectRowAtIndexPath:
中的单元格:
// This is where magic happens...
[tbleLectures beginUpdates];
[tbleLectures reloadRowsAtIndexPaths:[NSArray arrayWithObject:indexPathOfYourCell] withRowAnimation:UITableViewRowAnimationNone];
[tbleLectures endUpdates];
答案 1 :(得分:0)
如果要更改单元格的高度,则应重新加载表格视图并使用
- (void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
委托显示/隐藏详细视图的方法
另一个逻辑是维护tableView的状态并根据tableView的状态填充单元格。 tableView应具有isSelectedCell / notSelected状态。如果选择tableView,则返回单元格的数量始终为+1(一个用于详细单元格);并在选定单元格后插入详细信息单元格。要维护所选单元格的索引,您可能需要类变量。
对于iOS中的这种工作,你需要有一些逻辑! 希望这有帮助