测试已测试 | ✗ |
语言语言 | SwiftSwift |
许可协议 | MIT |
发布最后发布 | 2017年11月 |
SwiftSwift 版本 | 4.0 |
SPM支持 SPM | ✗ |
由 William Miller 维护。
这个 MMSLayeredView 类提供了在背景视图上分层 UIViews 并将合成图像保存到 png 文件的功能。分层视图可以在视图边界的限制内移动、调整大小和缩放。
## 基本用法 要运行示例项目,请首先克隆存储库,然后从 Example 目录运行 `pod install`。创建一个 MMSLayeredView 对象。将其添加到应用程序的 UIViewController 子类之一的子视图中。或者使用 Interface Builder 将 UIView 添加到其中一个 UIViewControllers 的子视图中。在 Identity Inspector 中选择 MMSLayeredView 类。使其适合您应用程序的需求尺寸。
向对象添加一个背景视图。背景视图可以是 UIView 或任何 UIView 的子类。通常,您会将 UIImageView 添加为背景视图。调用 addBackgroundView 方法设置背景视图。
override func viewDidLoad() {
super.viewDidLoad()
let exampleLayeredView = MMSLayeredView.init(frame: CGRectMake(20.0, 20.0, 100.0, 100.0))
view.addSubview(exampleLayeredView)
let backgroundImage = UIImage.init(named: "example.jpg")
let backgroundView = UIImageView(image: backgroundImage)
backgroundView.contentMode = .ScaleToFill
sourceView.addBackgroundView(backgroundView)
}
addBackgroundImage 将视图添加到子视图中,调整宽度和高度以匹配 exampleLayeredView 的尺寸,并将框架的原点设置为 (0,0)。
一旦设置了背景视图,所有添加的子视图将显示在背景视图之上,按照 z-顺序。可以根据添加子视图的顺序设置背景视图;它总是在 z-顺序中显示在所有子视图的后面。
为视图设置一个唯一的标签,可以使用该方法访问任何子视图
viewWithTag(tag:Int)
使用 UIView 视图层次结构方法将子视图添加、删除和重新排列到分层视图中
addSubview(view:UIView)
removeFromSuperview()
insertSubview(view:UIView, atIndex: Int)
insertSubview(view: UIView, aboveSubview: UIView)
insertSubview(view: UIView, belowSubview: UIView)
exchangeSubviewAtIndex(index1: Int, withSubviewAtIndex: Int)
sendSubviewToBack(view: UIView)
bringSubviewToFront(view: UIView)
用户通过触摸视图中选择一个子视图作为应用程序操作的焦点。当触摸时,视图通过填充其外围区域以半透明的黑色来显示它具有焦点。要访问具有焦点的 UIView,请访问属性
public var viewWithFocus: UIView?
最后,这个类支持将背景视图和子视图合并到图像的功能。使用此功能,您可以使用该类构建提供对图像分层文本、使用贴纸装饰图像或两者都有的功能的应用程序。这是支持导出图像的公共方法
public func mergeTextAndImage() -> UIImage?
此类给应用程序用户以下操作
MMSLayeredView 通过 CocoaPods 提供。要安装,只需将以下行添加到您的 Podfile
中。
pod "MMSLayeredView"
William Miller,[email protected]
此项目采用 MIT 许可证。请参阅 LICENSE 文件以获取更多信息。通过链接到 项目页面 欢迎添加贡献。