【问题标题】:Double UIScrollView synchronization - Different height双 UIScrollView 同步 - 不同的高度
【发布时间】:2012-03-01 17:22:05
【问题描述】:

我目前正在开发 iPad 应用程序与 2 UIScrollView 在同一页面中。 左边是内容,右边是一些集团新闻。这两个UIScrollView 的高度大小不同。

示例:左 1000,右 2000。

我想同步2UIScrollView,我解释一下:

当用户滚动左侧UIScrollView 访问底部时,右侧UIScrollView 同时“滚动”。如果左边的 UIScrollView 恰好在底部,而右边的 UIScrollView 不在底部,右边的 UIScrollView 继续滚动直到……它自然停止。
如果用户在右侧 UIScrollView 上滚动,也会出现同样的行为。

您知道如何解决或处理我的问题吗?

【问题讨论】:

    标签: objective-c ios cocoa-touch ipad uiscrollview


    【解决方案1】:

    你必须听scrollViewDidScrolldelegate方法然后你可以设置第二个UIScrollViewcontentOffset

    【讨论】:

    • 是的,我知道,但它会产生一些冲突:如果我向左滚动,它会调用这个函数,而右边也会调用这个函数,所以左/右/左/右......生成不好行为
    • 向 UIScrollViews 添加标签并测试代理中的标签。如果你发现左边的标签,你必须滚动右边的标签。你知道我的意思吗?
    【解决方案2】:

    我将发布我使用的解决方案,以防将来有人遇到这个问题。

    您不直接设置contentOffset。你需要做一个解决方法。像这样:

    CGRect viewToUpdateBounds = viewToUpdate.bounds;
    viewToUpdateBounds.origin = scrolledView.contentOffset;
    viewToUpdate.bounds = viewToUpdateBounds;
    

    问候

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多