在UIScrollView中使用2个UITableView

5
我在我的应用程序中有一个带有2个页面的UIScrollView,每个页面都有一个带有一些行的UITableView。问题是触摸非常奇怪。如果我想从第一页转到第二页,我只需从右边向左滑动即可转到另一页,但UITableView会将滑动识别为垂直滑动并 "占用" 触摸。我必须尝试3-4次才能成功地转到另一页。这非常令人恼火,我想知道是否有人有办法使触摸更好。
提前感谢。 :)
7个回答

4
如果您想锁定滚动视图:
scrollView.scrollEnabled = NO;

1

保持滚动条的frame.height与tableView.frame.height相等。

为tableView设置directional lock属性。

self.tableView.directionalLockEnabled = YES;

1

让滚动正常工作就足够了

scrollViewContainer.delaysContentTouches = NO;

1

您可以为滚动视图保留自定义滚动条...这样用户就可以从该滚动条滚动......当然,如果您在滚动视图中插入表视图,则有两个委托,一个是滚动条的委托,另一个是表格的委托,现在如何控制两者...我认为这不好...所以将它们中的任何一个自定义,这样您就可以按照自己的意愿进行控制...最好始终保持自定义滚动条,因为它是非常外部的编码部分...


1
尝试设置scrollBar的directionalLockEnabled属性。

self.scrollBar.directionalLockEnabled = YES;


我没有启用滚动条。UIScrollView是水平的,而tableviews是垂直的(显然)。 - David Murray

1
当您移动页面时,只需将(UITableView)tblView.userInteractionEnabled = NO,这样它就会调用UIScrollView的触摸事件。

0

更多锁定ScrollView的方法。

1)

scrollViewContainer.delaysContentTouches = NO;

2)

scrollView.scrollEnabled = NO;

3)

self.scrollBar.directionalLockEnabled = YES;

像这样......希望对你有帮助。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接