一个轻型、优雅且安全的自动布局包装器。
无需“UIView 扩展”、“UILayoutGuide 扩展”、“objc_setAssociatedObjectAssociatedObject”、“objc_getAssociatedObject”等开销。
内容
例如
布局锚点
使用布局锚点,它将如下所示
class ViewController: UIViewController {
private lazy var someView = UIView()
override func viewDidLoad() {
super.viewDidLoad()
view.addSubview(someView)
someView.translatesAutoresizingMaskIntoConstraints = false
someView.heightAnchor.constraint(equalToConstant: 30).isActive = true
someView.widthAnchor.constraint(equalToConstant: 30).isActive = true
someView.centerXAnchor.constraint(equalTo: view.centerXAnchor).isActive = true
someView.centerYAnchor.constraint(equalTo: view.centerYAnchor).isActive = true
}
}
但是如果您支持 iOS 8,一切都会变得更糟,因为 of NSLayoutConstraint(item:attribute:relatedBy:blah:blah:blah:blah)
SuperPuperDuperLayout
您可以像这样使用 "SuperPuperDuperLayout"。
import SuperPuperDuperLayout
class ViewController: UIViewController {
private lazy var someView = UIView()
override func viewDidLoad() {
super.viewDidLoad()
view.addSubview(someView)
Layout.to(someView) {
$0.size.equal.value(.init(width: 30, height: 30))
$0.center.equalToSuperview.value(.zero)
}
}
}
安装
CocoaPods
CocoaPods 是一个 Cocoa 项目的依赖管理器。您可以按照以下命令安装它:
$ gem install cocoapods
需要 CocoaPods 1.4.0+ 版本来构建 SuperPuperDuperLayout 1.0.0。
使用 CocoaPods 将 SuperPuperDuperLayout 集成到您的 Xcode 项目中,请在您的 Podfile
中指定它:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
target 'TargetName' do
pod 'SuperPuperDuperLayout'
end
然后,运行以下命令:
$ pod install
要求
- iOS 8.0+
- Xcode 9.0+
- Swift 4.0+
致谢
- Alexander Zolotarev (@zolotarev_s)
许可
SuperPuperDuperLayout 在 MIT 许可下发布。详细信息请参阅 LICENSE。