URParallaxScrollAnimator 1.2.1

URParallaxScrollAnimator 1.2.1

测试已测试
语言 SwiftSwift
许可协议 MIT
发布最新发布2017年11月
SwiftSwift 版本3.2
SPM支持 SPM

Urtaq 维护。



URParallaxScrollAnimator

Swift podplatform pod poddoc license travis codecov CocoaPods compatible

这是什么?

在滚动视图上显示滚动时移动的动画,适用于 Swift3
这种代码风格是 面向协议编程
因此有些协议被配置为实施视差滚动。
这通过 objc_getAssociatedObject 扩展了 scrollView,使其在运行时具有视差滚动功能。

要显示滚动动画,可以使用 Lottie 代替 UIImageView。

此外,您还可以提供乐趣因子,触觉反馈
在向下滚动时提供触觉反馈。(但仅限 iOS 10)

sample

要求

  • iOS 8.1+
  • Swift 3.0+

安装

Cocoapods

将以下内容添加到您的 Podfile 文件中。

pod "URParallaxScrollAnimator"

依赖项

Lottie-iOS

示例

查看 Example 文件夹。
运行 pod install 并打开 .xcworkspace 文件。

用法

import URParallaxScrollAnimator

1. 设置视差滚动制造器

    // for example...
    func initView() {
        self.tableView.parallaxScrollExtension.makeParallaxScrollExtensionConfiguration(upperImage: #imageLiteral(resourceName: "cloud_by_ur2"), lowerImage: #imageLiteral(resourceName: "mountain_by_ur2"), lowerLottieData: nil)
    }
1.1. 如何使用 Lottie
  • 您可以在 Lottie-iOS 找到 Lottie 的详细用法指南
  • 在项目中添加 lottie 文件,然后只需使用 json 文件名加载 Lottie View
    sample

2. 在每个 UIScrollViewDelegate 函数中设置滚动处理函数

    func scrollViewDidScroll(_ scrollView: UIScrollView) {
        ...
        self.tableView.parallaxScrollExtension.parallaxScrollViewDidScroll(scrollView)
        ...
    }

    func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
        ...
        self.tableView.parallaxScrollExtension.parallaxScrollViewWillBeginDragging(scrollView)
        ...
    }

    func scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool) {
        ...
        self.tableView.parallaxScrollExtension.parallaxScrollViewDidEndDragging(scrollView)
        ...
    }

3. 如果您需要在应用中添加下拉刷新,则调用下拉刷新完成函数

    // for example, if calling the reload function, 
    // you must call the "parallaxScrollViewDidPullToRefresh" function just after reloading
    func handleAPICallFinish() {
        ...
        self.tableView.parallaxScrollExtension.parallaxScrollViewDidPullToRefresh()
        ...
    }

4. 😀URParallaxScrollAnimator 可配置参数😀

  • parallaxScrollRatio:目标 scroll view 与上层视差视图和下层视差视图之间的视差比例。
  • backgroundColor:视差 scrollView 的背景颜色。
  • isEnabledHapticFeedback:启用 触觉反馈。默认为 "true"。(但此功能仅适用于 iOS 10
  • isEnabledPullToRefresh:启用下拉刷新。默认为 "false"。
  • refreshAction:处理下拉刷新的回调。(如果您设置了此参数,则 "isEnabledPullToRefresh" 将自动设置为 "true")

待办事项

  • 支持滚动动画的 gif 格式。

许可协议

URParallaxScrollAnimator 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。