更改表格视图的选择

时间:2011-12-04 16:17:49

标签: iphone ios xcode

我从iOS开始开始,我想在表视图中实现以下行为: 列表的元素1无法选择,当选择其他行时,列表中的前一个元素将成为所选元素。我知道这是无意义的,它只是一种练习。顺便说一句,我的代码是:

-(NSIndexPath *) tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath{
NSUInteger row =[indexPath row];
if (row==0){
    return nil;
}
   return indexPath;
}

它可以避免选择第0行,现在我需要在行!= 0时将所选元素更改为前一个元素。我该怎么做?

1 个答案:

答案 0 :(得分:0)

UITableView有一个名为selectRowAtIndexPath:animated:scrollPosition:的方法(为您链接的文档),您可以在其中选择不同的行。

关于这一点的一些注意事项:你必须通过NSIndexPath选择一行(一旦你掌握了它就不太难设置),你的willSelectRowAtIndexPath可能会被第二次调用以编程方式调用selectRowAtIndexPath,这样你就需要找到一种忽略该调用的方法,同时注意用户用手指做的那些。