UITableView 失去选中状态 iOS

Posted

技术标签:

【中文标题】UITableView 失去选中状态 iOS【英文标题】:UITableView lose selected state iOS 【发布时间】:2011-11-21 02:03:59 【问题描述】:

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

【问题讨论】:

【参考方案1】:

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

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

    [tableView deselectRowAtIndexPath:indexPath animated:YES];

【讨论】:

【参考方案2】:

这很容易..

在您推送新视图的相同方法中,您应该添加以下行:

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

【讨论】:

【参考方案3】:

在 tableView 的 viewWillAppear 中,您希望从中删除选择的单元格:

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

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

【讨论】:

以上是关于UITableView 失去选中状态 iOS的主要内容,如果未能解决你的问题,请参考以下文章

Checkbox 失去其选中状态,并使用 Telerik RadDataPager 单击事件

UITableView&UICollectionView设置单元格的默认选中状态

UITableView 选定的单元格在滚动时不会保持选中状态

如何让WPF中窗体失去焦点后TextBox中的被选中文本仍然保持高亮状态?

Android入门第28天-ListView嵌套CheckBox在滚动时失去选中状态的问题

滚动 UITableView 时单选按钮未选中