【问题标题】:4 directional scrollview with paging4 向滚动视图,带分页
【发布时间】:2011-05-25 14:40:01
【问题描述】:

我需要实现一个滚动视图,它(在按下按钮时)将根据按下的按钮向上、向左、向下或向右翻页。此外,用户可以无限期地朝同一方向翻页,这将在一种轮播中加载视图。所以我有 3 个 viewControllers.... viewController 1 首先显示....用户按下左,它显示 viewController2,左再次显示 viewController3,左再次回到 viewController 1 等,上,下,右相同.

有没有人知道实现这个的好方法?我愿意接受所有建议。

非常感谢

朱尔斯

【问题讨论】:

    标签: iphone uiscrollview paging


    【解决方案1】:

    编辑 - 第二次尝试清晰的解释:

    考虑这个矩阵。

    • 这个 3x4 矩阵是滚动视图的内容区域。启用分页后,您的滚动视图将停止在这些“单元格”之一上,例如2,1。滚动视图的该部分将可见。
    • 如果您希望每个“单元格”由其自己的视图控制器控制,则预先生成所有视图控制器(及其视图),然后将其所有视图作为子视图添加到滚动视图。
    • 您可以使用您想在任何给定位置显示的任何视图填充此滚动视图。相对于滚动视图的原点设置每个视图的框架。因此,如果单元格为 320 像素宽和 480 像素高,则单元格 1,3 的框架将为 CGRectMake(1*320, 3*480, 320,480)。
    • 当 scrollView 结束减速时,你可以获取它的 contentOffset 属性,做一些算术并找出你所在的单元格。
    • 要获得环绕效果,您必须采取一些技巧。您可以在每行和每列的末尾放置一个额外的单元格,如果您发现自己在该单元格中,只需将滚动视图的 contentOffset 设置为行或列开头的相应单元格。

    【讨论】:

    • 对不起,我的意思是 viewControllers。就像在每个页面中加载一个带有自己视图的 viewController 一样。嗯....我不确定我是否理解每个“页面”的概念是另一个只能向上滚动的滚动视图?我需要能够从所有“页面”向任何方向无限滚动。那有意义吗?再次感谢。
    • @Jules,我原来的帖子不清楚。我已经输入了另一个,请看看这是否更有意义。
    • 谢谢,这似乎是一个好方法。我会试一试,让你知道我的进展情况。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-13
    • 1970-01-01
    • 1970-01-01
    • 2021-11-29
    • 1970-01-01
    相关资源
    最近更新 更多