0

我在WEPopover中嵌入了一个 UITableView 。我可以看到整个视图并选择除了底部的单元格之外的单元格。按下底行不会导致调用 didSelectRowAtIndexPath。我尝试在视图中添加一个 UITapGestureRecognizer 来拦截触摸并使用下面的代码计算相应的单元格,发现它可以工作。我试图理解为什么即使表视图正在接收触摸事件也没有调用 didSelectRowAtIndexPath 。

CGPoint touchLocation = [sender locationInView:self.tableView];
NSIndexPath *tappedIndexPath = [self.tableView indexPathForRowAtPoint:touchLocation];
NSInteger row = [tappedIndexPath row];

任何想法,将不胜感激。

4

1 回答 1

-1

摆脱 UITapGestureRecognizer,你不需要它。我的猜测是

1) 你的 WEPopover 比你的 UITableView 小。将 WEPopover 上的 clipsToBounds 属性设置为 YES 并查看是否仍然存在此问题。您还可以仔细检查 UITableView 框架和 WEPopover 框架的高度,并确保它们相同。

2)你有一些覆盖底部单元格的透明视图。检查您的视图层次结构并将透明视图的颜色设置为 [UIColor redColor] 之类的颜色,并确保您的 UITableView 顶部没有任何东西。

你能触摸底部的单元格并滚动吗?

于 2013-04-24T20:45:02.787 回答