MaterialMotionPop 2.1.0

MaterialMotionPop 2.1.0

测试已测试
语言语言 SwiftSwift
许可证 Apache 2
发布最新发布2017年2月
SwiftSwift 版本3.0
SPM支持 SPM

Jeff Verkoeyen维护。



 
依赖项
pop~> 1.0
MaterialMotionRuntime< 7.0, >= 4.0
 

  • 材料运动作者

POP for Material Motion (Swift)

POP 物料运动系列提供了 Facebook 的 POP 库与 物料运动运行时之间的桥梁。

支持的语言

  • Swift 3
  • Objective-C

功能

SpringTo 使用 POP 弹簧在应用程序的主线程上动画化属性,使用弹簧物理驱动。

例如,您可能使用一个 SpringTo 计划将视图的位置移动到屏幕上的特定位置

let springTo = SpringTo("position", destination: CGPoint(x: 10, y: 10))
scheduler.addPlan(springTo, to: view.layer)

SpringTo 支持某些类型的子集的关键路径

CALayer

  • backgroundColor
  • bounds
  • cornerRadius
  • borderWidth
  • borderColor
  • opacity
  • position
  • position.x
  • position.y
  • transform.rotation.z
  • transform.rotation.x
  • transform.rotation.y
  • transform.scale.x
  • transform.scale
  • transform.scale.y
  • bounds.size
  • sublayerTransform.scale
  • sublayerTransform.translation.x
  • sublayerTransform.translation
  • sublayerTransform.translation.y
  • sublayerTransform.translation.z
  • transform.translation.x
  • transform.translation
  • transform.translation.y
  • transform.translation.z
  • zPosition
  • shadowColor
  • shadowOffset
  • shadowOpacity
  • shadowRadius

CAShapeLayer

  • strokeStart
  • strokeEnd
  • strokeColor
  • fillColor
  • lineWidth
  • lineDashPhase

NSLayoutConstraint

  • constant

UIView

  • alpha
  • backgroundColor
  • bounds
  • center
  • frame
  • transform.scale.x
  • transform.scale
  • transform.scale.y
  • bounds.size
  • tintColor

UIScrollView

  • contentOffset
  • contentSize
  • zoomScale
  • contentInset
  • scrollIndicatorInsets

UINavigationBar

  • barTintColor

UILabel

  • textColor

阅读更多特性请求以支持更多的关键路径。

安装

使用

导入框架

@import MaterialMotionPop;

现在您可以访问所有 API。

示例应用/单元测试

查看本地仓库副本以通过运行以下命令访问目录应用程序:

git clone https://github.com/material-motion/pop-swift.git
cd pop-swift
pod install
open MaterialMotionPop.xcworkspace

指南

  1. 如何使用SpringTo计划动画属性
  2. 如何配置弹簧行为
  3. 如何在触摸识别器活动时暂停弹簧

如何使用SpringTo计划动画属性

代码片段

在Objective-C中

MDMSpringTo *springTo = [[MDMSpringTo alloc] initWithProperty:"<#property key path#>"
                                                  destination:<#Destination value#>];
[scheduler addPlan:springTo to:<#Object#>];

在Swift中

let springTo = SpringTo("<#property key path#>", destination: <#Destination value#>)
scheduler.addPlan(springTo, to: <#Object#>)

如何配置弹簧行为

可以通过在SpringTo实例上设置一个SpringConfiguration对象来配置弹簧的行为。

代码片段

在Objective-C中

springTo.configuration = [[MDMSpringConfiguration alloc] initWithTension:<#tension#>
                                                                friction:<#friction#>];

在Swift中

springTo.configuration = SpringConfiguration(tension: <#tension#>, friction: <#friction#>)

如何在触摸识别器活动时暂停弹簧

代码片段

在Objective-C中

MDMPauseSpring *pauseSpring = [[MDMPauseSpring alloc] initWithProperty:"<#property key path#>"
                                                     gestureRecognizer:<#gesture recognizer#>];
[scheduler addPlan:springTo to:<#Object#>];

在Swift中

let springTo = MDMPauseSpring("<#property key path#>", whileActive: <#gesture recognizer#>)
scheduler.addPlan(springTo, to: <#Object#>)

贡献

我们欢迎贡献!

查看我们的即将到来的里程碑

更多关于我们的团队我们的社区和我们贡献者必修课的信息。

许可

基于Apache 2.0许可。详见LICENSE文件。