SnapKit 是一个 DSL,旨在让 iOS 和 macOS 上的 Auto Layout 更易于使用。
⚠️ 如果要在 Swift 4.x 中使用,请确保您正在使用 >= 4.0.0。 ⚠️
⚠️ 如果要在 Swift 5.x 中使用,请确保您正在使用 >= 5.0.0。 ⚠️
内容
需求
- iOS 10.0+ / Mac OS X 10.12+ / tvOS 10.0+
- Xcode 10.0+
- Swift 4.0+
通信
- 如果您 需要帮助,请使用 Stack Overflow。 (标签 'snapkit')
- 如果您想要 提出一般性问题,请使用 Stack Overflow。
- 如果您 发现了错误,请提交问题。
- 如果您 有功能请求,请提交问题。
- 如果您 想要贡献,提交拉取请求。
安装
CocoaPods
CocoaPods 是 Cocoa 项目的依赖管理器。您可以使用以下命令来安装它
$ gem install cocoapods
CocoaPods 1.1.0+ 是构建 SnapKit 4.0.0+ 所必需的。
要使用 CocoaPods 将 SnapKit 集成到您的 Xcode 项目中,请在您的 Podfile
中指定它
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!
target '<Your Target Name>' do
pod 'SnapKit', '~> 5.0.0'
end
然后,运行以下命令
$ pod install
Carthage
Carthage 是一个去中心化的依赖管理器,可以帮助构建您的依赖关系并提供二进制框架。
您可以使用以下命令通过 Homebrew 安装 Carthage
$ brew update
$ brew install carthage
要使用 Carthage 将 SnapKit 集成到您的 Xcode 项目中,请在您的 Cartfile
中指定它
github "SnapKit/SnapKit" ~> 5.0.0
运行 carthage update
以构建框架,并将构建的 SnapKit.framework
拖到您的 Xcode 项目中。
手动
如果您不想使用上述任何依赖管理器,您可以将 SnapKit 手动集成到项目中。
使用
快速开始
import SnapKit
class MyViewController: UIViewController {
lazy var box = UIView()
override func viewDidLoad() {
super.viewDidLoad()
self.view.addSubview(box)
box.snp.makeConstraints { (make) -> Void in
make.width.height.equalTo(50)
make.center.equalTo(self.view)
}
}
}
Playground
您可以在 Playgound 中尝试使用 SnapKit。
注意
要尝试在 Playgound 中使用 SnapKit,首先打开
SnapKit.xcworkspace
并为任何模拟器构建 SnapKit.framework。
资源
致谢
- Robert Payne (@robertjpayne)
- 许多其他贡献者
许可
SnapKit 是在 MIT 许可下发布的。有关详细信息,请参阅 LICENSE 文件。