繁体   English   中英

UITableView失去选定状态的iOS

[英]UITableView lose selected state iOS

我有一个UITableView,因此当您按第一个单元格时,它将带您到新视图(新xib)。 当您按下第二个单元格时,您将转到另一个视图,依此类推。 当您转到这些新视图中的任何一个并返回到tableview视图时,您刚刚按下的单元格仍处于选中状态(其突出显示的蓝色)。 解决该问题的代码是什么?

在您的tableView数据源委托方法中:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    [tableView deselectRowAtIndexPath:indexPath animated:YES];
}

在tableView的viewWillAppear内部,您要从中删除选择的单元格:

UITableViewCell *cell = (UITableViewCell *)[myTableView cellForRowAtIndexPath:lastSelected];
[cell setSelected:NO];

其中lastSelected可以是NSIndexPath类型的全局变量,用于存储上述UITableView的didSelectRowAtIndexPath中的indexPath

这很容易..

用与推送新视图相同的方法,应添加以下行:

[tableView deselectRowAtIndexPath:(NSIndexPath *)indexPath animated:(BOOL)animated];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM