【问题标题】:Selecting row while scrolling滚动时选择行
【发布时间】:2014-07-01 01:08:22
【问题描述】:
我有一个程序可以在不同时间选择行,效果很好。但是,当我尝试向下滚动并尝试选择另一行“视图外”时,我的程序已经在某个地方选择了一行,它不允许我选择我点击的那一行。仅当我选择的行在当前显示的单元格或显示视图中时才有效。我启用了多项选择,但仍然无法正常工作。
-我还发现在程序已选择行的视图之外选择行时,不会调用 didSelectRowAtIndex
【问题讨论】:
标签:
ios
uitableview
uiscrollview
didselectrowatindexpath
【解决方案1】:
我找到了解决办法。 didSelectRowAtIndex 没有被调用,因为我的 tableView 滚动位置设置为UITableViewScrollPositionTop,这不允许我选择视图之外的另一行。我所做的只是将其更改为UITableViewScrollPositionNone 并将scrollToRowAtIndexPathwith 滚动位置添加到无将允许最小滚动,所选行在底部可见。
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:*rows inSection:0]; // set to whatever you want to be selected first
[tableview selectRowAtIndexPath:indexPath animated:NO scrollPosition:UITableViewScrollPositionNone];
[tableview scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionNone animated:NO];
}