ParallaxView 3.1.2

ParallaxView 3.1.2

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布上次发布2020年8月
SPM支持 SPM

Łukasz ŚliwińskiMichał Myśliwiec 维护。



  • 作者:
  • [Łukasz Śliwiński]

PGS Software

ParallaxView

Swift 5.0 CocoaPods Compatible Carthage Compatible SPM Compatible Platform License

概要

易于使用的具有视差效果的 UIViewUICollectionViewCell,还可以通过扩展将其效果添加到任何 UIView 中。使用 Apple TV 遥控器旋转视图。与 Apple TV 主屏幕中的瓷砖功能类似。

ParallaxView ParallaxView

发布历史

打开您的 storyboard 或 xib,然后拖放 UIView 控件。在 身份检查器 中将自定义类更改为 ParallaxView。您也可以从代码中创建控件。

ParallaxCollectionViewCell

界面构建器 中将集合视图单元格类更改为 ParallaxCollectionViewCell,或者从代码中执行此操作。

您还可以创建 ParallaxCollectionViewCell 的子类而不是 UICollectionViewCell,并将其用作普通集合单元格。

扩展

如果 ParallaxViewParallaxCollectionViewCell 无法满足您的需求,您可以使用扩展,该扩展可与其任何 UIView 配合使用。在很多情况下,它可以看起来像这个示例。

override func didUpdateFocus(in context: UIFocusUpdateContext, with coordinator: UIFocusAnimationCoordinator) {
	coordinator.addCoordinatedAnimations({
		if context.nextFocusedView === yourCustomView {
			yourCustomView.addParallaxMotionEffects()
		}
		if context.previouslyFocusedView === yourCustomView {
			yourCustomView.removeParallaxMotionEffects()
		}
	}, completion: nil)
}

在动画块内添加和删除视差效果非常重要,以避免出现故障。 ParallaxViewParallaxCollectionViewCell 在内部使用相同的方法。有关更多详细信息,请查看示例。

自定义

组件在代码中有文档说明,也可以查看示例以获取更多详细信息。

文档

属性

ParallaxViewParallaxCollectionViewCell 具有相同的自定义属性。

  • parallaxEffectOptions - 使用此属性可以自定义视差效果。

    • parallaxMotionEffect - 配置视差效果(平移、角度等)
    • subviewsParallaxMode - 枚举,允许您为 ParallaxView 的子视图配置视差效果
    • shadowPanDeviation - ParallaxView 的阴影在视差效果期间将移动的点的最大值
    • glowAlpha - 配置发光效果的 alpha 值(如果等于 0.0,则不会添加发光效果)
    • parallaxSubviewsContainer - 用于应用子视图视差效果的自定义容器视图。默认情况下,它本身也将是可平移的视图。
    • glowContainerView - 将用作发光效果容器的视图。您不需要配置此属性,因为对于 ParallaxView,将自动创建子视图以用于此目的,对于 ParallaxCollectionViewCell,则将使用单元格的 contentView。默认情况下,当您使用扩展时(默认为 nil),可以使用 self 作为发光容器,但仅当 glowAlpha 大于 0.0 时。但如果您想要,您可以定义自定义视图 - 详细信息请参阅示例项目。
    • glowImageView - 将用作发光效果的图像视图。ParallaxView 框架提供默认图像,并将其设置。
  • glowPosition - (默认 .top)- 允许自定义与 glowImageContainer 相关的发光效果位置。您可以通过创建 GlowPosition 实例来提供自定义设置。

  • parallaxViewActions - 使用此属性的自定义属性来修改偏移视图的默认行为。内部ParallaxViewParallaxCollectionViewCell都将调用回调和函数。

    • setupUnfocusedState - 当视图应改变外观为聚焦状态时,将在动画块中调用这个闭包。
    • setupFocusedState - 当视图应改变外观为非聚焦状态时,将在动画块中调用这个闭包。
    • before BecomeFocused Animation - 在开始聚焦变化动画之前调用这个闭包。
    • before ResignFocus Animation - 在开始非聚焦变化动画之前调用这个闭包。
    • become Focused - 当发生聚焦变化事件时调用这个闭包。在大多数情况下,默认实现应该工作。
    • resign Focus - 当发生聚焦变化事件时调用这个闭包。在大多数情况下,默认实现应该工作。
    • animate Press In - 默认的按下开始动画实现。
    • animate Press Out - 默认的按下结束动画实现。
  • cornerRadius - 使用这个值替换self.view.layer.cornerRadius。这将在需要时自动为光晕效果视图校正半径。

要求

Swift 5.0, tvOS 9.0

安装

在Podfile中添加行

# ...
target 'MyApp' do
  # your other pod
  # ...
  pod 'ParallaxView'
end
# ...

向Cartfile添加一行

github "PGSSoft/ParallaxView"

需要 Xcode 12(Swift 5.3)!

在 Xcode 中

选择 文件 > Swift Packages > 添加包依赖。输入https://github.com/PGSSoft/ParallaxView

如果您想了解更多详细信息,请访问 Apple 的文档

  • 说明书

您可以从我们的发布页面下载最新文件。完成后,将ParallaxView.xcodeproj拖放到您的 Xcode 项目中,然后在 通用 选项卡下的 嵌入二元文件 部分,添加 ParallaxView.framework。示例项目以相同方式配置,因此您有了一份参考清单。

用法

import ParallaxView

贡献

欢迎在 GitHub 上发送错误报告和拉取请求https://github.com/PGSSoft/ParallaxView

许可证

该项目根据MIT 许可证条款提供开源。

关于

该项目由软件开发机构 PGS 软件公司 维护。查看我们的其他 开源项目联系我们 以开发您的产品。

关注我们

Twitter URL
Twitter Follow