我有一个名为allone.h
的桌面视图,其中的单元格都是带字幕指示符的字幕样式单元格。
字幕文本是动态生成的,因此很可能每个单元格都有不同的字幕文本。
我有一个if语句,如果text =“hello,world”,则说明,然后将附件类型更改为detailDisclosureIndicator
。按下detailDisclosureIndicator
时,它会推送一个新控制器,更改字幕文本,然后弹出该视图控制器并返回allone.h
。问题是,如果文本!=“hello,world”,它仍会显示detailDisclosureIndicator
甚至。我尝试更改viewWillAppear
中的样式,但我无法访问单元格。
这是我的代码。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
//populate cells with stuff
if([cell.detailTextLabel.text isEqualToString:@"hello, world"]){
cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
}
}
所以我想我的问题是,当我返回allone.h
并且单元格的文本不再是“hello,world”时,如何更改附件类型返回?
答案 0 :(得分:2)
您可以在 - [UITableView cellForRowAtIndexPath:]中执行此操作。就像你的if语句的“else”一样。
要重新加载单元格,您只需调用reloadData或reloadRowsAtIndexPaths:withRowAnimation:。
答案 1 :(得分:0)
我认为cell.detailTextLable等于nil。所以电池配件不会改变。请仔细检查一下。你以前配置过这个单元吗?