Silicon 是一个极简的 UIKit DSL,它可以将你的 Auto Layout 约束从冗长变为优雅,从繁琐变为富有表现力。
import UIKit
+ import Silicon
class FeedViewController: UIViewController {
private let tableView = UITableView()
override func viewDidLoad() {
super.viewDidLoad()
view.addSubview(tableView)
- NSLayoutConstraint.activate([
- tableView.topAnchor. constraint(equalTo: view.topAnchor, constant: 0),
- tableView.leftAnchor.constraint(equalTo: view.leftAnchor, constant: 0),
- tableView.rightAnchor.constraint(equalTo: view.rightAnchor, constant: 0),
- tableView.bottomAnchor.constraint(equalTo: view.bottomAnchor, constant: 0),
- ])
+ tableView.pin(to: view)
}
}
Swift Package Manager 是一个用于管理 Swift 代码分发的工具。它与 Swift 构建系统集成,可以自动完成下载、编译和链接依赖项的过程。
要使用 Swift Package Manager 将 Silicon 集成到你的 Xcode 项目中,请将其添加到 Package.swift
的 dependencies 值中。
dependencies: [
.package(
url: "https://github.com/kabir-asani/Silicon.git",
.upToNextMajor(from: "0.0.2")
)
]
你可以从这里查看完整的安装指南。
import Silicon
class FeedViewController: UIViewController {
private let tableView = UITableView()
override func viewDidLoad() {
super.viewDidLoad()
view.addSubview(tableView)
// pins top, left, right and bottom anchors of tableView to view's corresponding anchors
tableView.pin(to: view)
}
}
Silicon 在 MIT 许可下发布。有关详细信息,请参阅 LICENSE
文件。