MaterialMotionDirectManipulationFamily 1.0.0

MaterialMotionDirectManipulationFamily 1.0.0

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

Jeff Verkoeyen 维护。



  • Material Motion 作者

Swift 中的直接操作 Material Motion Family

支持的语言

  • Swift 3
  • Objective-C

功能

此库包含以下计划:

  • 可拖动可捏合可旋转
  • 直接操作
  • 改变锚点

可拖动、可捏合和可旋转计划允许用户移动、缩放和旋转视图。它们各自监听手势识别器发出的差异并将它们添加到目标。

如果一个视图可以被拖动,那么它通常也可以被捏合和旋转。为了使之简单,我们提供了一个名为 DirectlyManipulable 的计划。它等同于将单个 可拖动可捏合可旋转 添加到同一目标。

一系列的 可拖动可捏合可旋转直接操作 代表了可以描述目标视图行为的特性。当你将这些特性中的任何一个添加到一个视图时,视图的 isUserInteractionEnabled 就会被启用。如果计划相关的手势识别器尚未与视图相关联,那么手势识别器将被添加到目标视图。

改变锚点 在保持 view.frame 相同的同时调整 view.layer.anchorPoint。在实际操作中,你不会直接使用此计划,因为 可拖动可捏合可旋转 分别提供了 shouldAdjustAnchorPointOnGestureStart 属性来自动发出改变锚点的实例。

安装

使用

导入框架

@import MaterialMotionDirectManipulationFamily;

现在您将有权访问所有 API。

示例应用程序/单元测试

通过运行以下命令访问本地副本的仓库中的 Catalog 应用程序

git clone https://github.com/material-motion/material-motion-family-direct-manipulation-swift.git
cd material-motion-family-direct-manipulation-swift
pod install
open MaterialMotionDirectManipulationFamily.xcworkspace

指南

  1. 如何直接操作视图
  2. 如何使视图可拖动
  3. 如何使用现有的手势识别器使视图可拖动

如何直接操作视图

代码片段

在Objective-C中

[runtime addPlan:[MDMDirectlyManipulable new] to:<#Object#>];

在Swift中

runtime.addPlan(DirectlyManipulable(), to: <#Object#>)

如何使视图可拖动

代码片段

在Objective-C中

[runtime addPlan:[MDMDraggable new] to:<#Object#>];

在Swift中

runtime.addPlan(Draggable(), to: <#Object#>)

如何使用现有的手势识别器使视图可拖动

代码片段

在Objective-C中

MDMDraggable *draggable = [[MDMDraggable alloc] initWithGestureRecognizer:panGestureRecognizer];
[runtime addPlan:draggable to:<#Object#>];

在Swift中

runtime.addPlan(Draggable(withGestureRecognizer: panGestureRecognizer), to: <#Object#>)

贡献

我们欢迎贡献!

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

了解更多关于我们的团队我们的社区以及我们的贡献者必备知识

许可

根据Apache 2.0许可协议发布。有关详细信息,请参阅LICENSE文件。