【问题标题】:Create a sliding animation with Swift使用 Swift 创建滑动动画
【发布时间】:2016-06-22 19:48:25
【问题描述】:

我制作了一个应用程序,使用滑动手势可以将您从当前视图带到下一个视图,但是没有动画。当您滑动它时,它会立即用新视图替换屏幕。我希望有一个滑动动画,并且还希望当您滑动时动画与您的手同步,而不仅仅是“自动”滑动动画(如果您要滑动)。 Snapchat 将是我想要实现的一个很好的例子,当您在视图之间滑动时,当前视图会转到下一个视图。任何事情都会有所帮助!

【问题讨论】:

    标签: ios swift animation gesture sliding


    【解决方案1】:

    最简单(内置)的东西就是UIPageViewController。这将自动正确地做手势(所以它就像跳板)。

    【讨论】:

    • 你的意思可能是UIPageViewController
    【解决方案2】:

    如果您只是在 UIView 对象之间滑动,请考虑使用 UICollectionView where

    • 单元格是屏幕的大小
    • 开启pagingEnabled
    • 使其水平滚动

    如果您在具有各自视图的UIViewController 对象之间滑动,您可以:

    • 使用UIPageViewController;或
    • 通过交互式动画控制器使用自定义过渡(例如,UIPercentDrivenInteractiveTransition 绑定到平移手势)。

    页面视图控制器比自定义交互式转换要简单得多。

    【讨论】:

    • 使用自定义 UIViewController 过渡动画是否比在页面视图或滚动视图中使用视图更好?重新内存或性能。如果滚动视图或页面视图更容易,为什么还要实现自定义动画(尝试决定是在现有应用中使用此类过渡重做自定义过渡,还是应该使用更简单的 UI 设置重新构建)。
    • 自定义过渡只会给您更高级别的控制,但如果您不做任何需要该级别控制的事情,那么请随意坚持使用更简单的方法。我更喜欢页面视图控制器,因为它是一个很好的内存管理基础设施;如果使用滚动视图,请注意内存使用情况(例如,仅创建实际立即需要的 UI 控件,并在它们滚动到足够远以承载任何实用程序时释放它们)。
    猜你喜欢
    • 1970-01-01
    • 2017-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-20
    相关资源
    最近更新 更多