【发布时间】:2013-01-20 03:22:15
【问题描述】:
根据我的需要,我在 UISCrollView 下直接添加了一个 UITableView :
--- 主界面视图
-------- UITableView
-------- UIScrollView
因此,当我滚动滚动视图时,我会更改表视图的内容偏移量。它完美地工作。 但是当我尝试选择一个单元格时,我无法捕获委托方法:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
有什么特别的事情要做吗?我试图继承 UIScrollView 并实现:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
它可以工作,但我无法滚动我的 UIScrollView ...
【问题讨论】:
-
看起来你的滚动视图正在捕捉所有的触摸事件,因为它覆盖了表格视图。
-
是的,这就是为什么我想知道是否有办法将触摸事件传输到它下面的视图......
-
可能您应该将所有点击事件转发到 tableview 并将所有其他触摸事件保留到 uiscrollview,到目前为止,您通过 - (void)touchesBegan:(NSSet * 将所有内容发送到 table view ) 触及事件:(UIEvent *) 事件。虽然这可以实现,但请检查您的逻辑。你的做法是不对的。将有另一种方式来实现你想要的。
-
为什么你的表格视图上有滚动视图?你确定它需要在那里吗?
-
这应该回答你的问题:stackoverflow.com/questions/11480201/…
标签: ios objective-c uitableview uiscrollview didselectrowatindexpath