【问题标题】:Progressively reveal and slide UIView down from behind another UIView从另一个 UIView 后面逐渐显示并向下滑动 UIView
【发布时间】:2012-02-15 19:07:39
【问题描述】:

我有一个矩形菜单样式视图(视图 1),它位于窗口下方约 100 像素处(即窗口上方有空间),并且需要为下拉内容(视图 2)设置动画,使其显示在下方从视图 1 在屏幕下方。我需要动画从视图 1 的底部边界开始 - 与 iOS 5 通知下拉非常相似,除了从屏幕下方的特定点开始。

我不能简单地从屏幕外滑入视图 2,因为由于各种原因,我无法覆盖会隐藏其运动的 UIView,直到它到达视图 1 的下边缘。

我已经检查了这个答案 - Programmatically reveal a UIView - 但我不认为这是合适的,因为我希望菜单滑动,而不是从静态起点显示。而且,正如所指出的,我不能用另一个视图“隐藏”滑动视图。

如何向下滑动视图 2,以便它从另一个视图的下边界出现时显示出来,类似于 io5 通知下拉?

【问题讨论】:

    标签: iphone uiview ios5 uiviewanimation


    【解决方案1】:

    在一个超视图中包含两个子视图,并对其边界进行剪裁。因此,您将拥有您的超级视图(假设是应用程序窗口),并在该视图中(边界被剪裁)。我们称之为容器视图。该容器将起源于您当前插入/始终可见的视图所做的任何 Y 坐标,但它的高度将延伸到足以包含完全展开的“滑动”第三子视图。

    因此,在您的容器视图中,您将第一个始终可见的视图(视图 1)放置在坐标 0x 0y 处,然后您将在其下方插入滑动视图(视图 2),并为视图添加框架 y 偏移2 相应地设置为足够的负值,以通过覆盖视图 1 和容器视图的裁剪边界将其完全隐藏。

    当用户拖动时(或您用来显示“滑动”视图的任何方式),第三个视图从始终存在的视图下方向下滑动,但始终停留在总体剪辑视图内。中提琴。

    【讨论】:

    • 效果很好 - 非常感谢!这种限制边界的东西对我来说从来没有多大意义,非常感谢您的澄清。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-28
    • 2018-06-22
    • 1970-01-01
    • 2017-12-14
    • 1970-01-01
    • 2016-04-27
    相关资源
    最近更新 更多