UITableview选择保持突出显示

时间:2012-01-26 18:23:01

标签: objective-c uitableview xcode4.2 storyboard

我正在使用XCode4.2开发故事板应用程序

我点击UITableView中的点击切换视图后点击该行以蓝色突出显示并加载新视图。

当我回到原始视图时,该行仍然以蓝色突出显示...我该如何禁用它?

3 个答案:

答案 0 :(得分:1)

使用deselectRowAtIndexPath:(NSIndexPath *)indexPath animated:(BOOL)animated函数取消选择uitableview

中的行

在viewWillAppear函数中调用它

[yourTableView deselectRowAtIndexPath:selectedIndexPath animated:NO];

如果您不确定上次在表中的所有索引路径上运行循环时选择了哪个索引。

-(void) viewWillAppear:(BOOL)animated{


    [super viewWillAppear:animated];

    for(int i = 0; i <= [yourArr count]; i++)
    {
        NSIndexPath *indexPath = [NSIndexPath indexPathForRow:i inSection:0];
        [yourTableView deselectRowAtIndexPath:indexPath animated:NO];
    }

}

注意:由于我不知道您的确切代码....您需要根据需要修改上述代码。

答案 1 :(得分:1)

我在

中这样做
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    [tableView deselectRowAtIndexPath:indexPath];
}

这样我每次都会选择索引路径。

答案 2 :(得分:0)

UITableViewController会自动执行此操作。否则,在您拥有控制器的viewDidAppear中,您需要在表格视图上调用- (void)deselectRowAtIndexPath:(NSIndexPath *)indexPath animated:(BOOL)animated