【问题标题】:2 UITableView in a UIScrollView2 UIScrollView中的UITableView
【发布时间】:2012-07-24 04:07:04
【问题描述】:

我的应用中有一个UIScrollView,其中有2 个页面,每个页面都有一个UITableView,其中有一些行。问题是触摸真的很奇怪。如果我想在第一页时转到第二页,我只需从右侧向左滑动即可转到另一页,但UITableView 将滑动检测为垂直滑动并“获取”触碰。我必须尝试 3-4 次才能成功转到其他页面。这很烦人,我想知道是否有人有办法让触感更好。

提前致谢。 :)

【问题讨论】:

    标签: iphone objective-c ios uitableview uiscrollview


    【解决方案1】:

    如果你想锁定滚动视图:

    scrollView.scrollEnabled = NO;
    

    【讨论】:

      【解决方案2】:

      您可以为滚动视图保留自定义滚动条...因此用户将从该滚动条滚动......如果您在滚动视图中插入表格视图,则有两个委托,一个是滚动条,另一个是表格现在你将如何控制这两者......我认为它不好......所以让它们中的任何一个自定义,这样你就可以按照你想要的方式控制它......最好总是我们保持自定义滚动条,因为它的外部部分编码....

      【讨论】:

        【解决方案3】:

        尝试设置 scrollBar 的 directionalLockEnabled 属性。

        self.scrollBar.directionalLockEnabled = YES;

        【讨论】:

        • 我没有启用滚动条。 UIScrollView 是水平的,tableviews 是垂直的(显然)。
        【解决方案4】:

        保持滚动条的frame.height等于tableview.frame.height。

        设置tableView的方向锁属性。

        self.tableView.directionalLockEnabled = YES;
        

        【讨论】:

          【解决方案5】:

          正常滚动就够了

          scrollViewContainer.delaysContentTouches = NO;
          

          【讨论】:

            【解决方案6】:

            当您移动页面时,只需创建(UITableView)tblView.userInteractionEnabled = NO, 所以它调用UIScrollView的触摸事件。

            【讨论】:

              【解决方案7】:

              更多锁定滚动视图的方法。

              1)

              scrollViewContainer.delaysContentTouches = NO;
              

              2)

              scrollView.scrollEnabled = NO;
              

              3)

              self.scrollBar.directionalLockEnabled = YES;
              

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

              【讨论】:

                猜你喜欢
                • 2023-03-25
                • 2014-09-16
                • 1970-01-01
                • 2012-06-11
                • 1970-01-01
                • 2011-07-02
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多