Outletgen Xcode 脚本
- 不再拖放 @IBOutlets
🙌 - 在 ViewControllers 中不再杂乱无章
🗑 - 类型安全,不再因缺少 @IBOutlets 而神秘崩溃
✨
此脚本将自动为您生成视图输出!视图作为 VC 扩展生成,并通过对象关联存储
特性
- Storyboards/XIB 支持
- 子视图输出
- 单元格 storyboard 原型中子视图的输出
- 约束输出
- UBBarButtonItems 输出
早期版本,可能存在虫害,请自由测试和贡献
安装
- 将
pod 'Outletgen'
添加到您的 Podfile 中 - 将
"$PODS_ROOT/Outletgen/Outletgen --module $PRODUCT_MODULE_NAME"
添加到您 Xcode 中的运行脚本。 将其拖放到编译源代码阶段之上. - 构建并将生成的
Outletgen.swift
添加到您的项目中。如果不必要,取消选中 如果需要则复制文件.
建议将 Outletgen.swift
添加到 .gitignore
。
或
手动安装
- 将
Outletgen
拖放到您的项目文件夹中。 - 将
"$SRCROOT/Outletgen --module $PRODUCT_MODULE_NAME"
添加到您 Xcode 中的运行脚本。 将其拖放到编译源代码阶段之上. - 构建并将生成的
Outletgen.swift
添加到您的项目中。如果不必要,取消选中 如果需要则复制文件.
使用
只需将“输出标识符”(outletIdentifier
)添加到您的视图中,XIBs/Storyboards 中的约束,Outletgen 将为您自动生成代码供您使用。
之前
class MyVc: UIViewController {
@IBOutlet weak var tableView: UITableView!
@IBOutlet weak var activityIndicator: UIActivityIndicatorView!
@IBOutlet weak var emptyView: UIScrollView!
@IBOutlet weak var searchBar: UISearchBar!
override func viewDidLoad() {
tableView.isHidden = true
activityIndicator.isHidden = true
emptyView.isHidden = true
searchBar.isHidden = true
}
之后
不支持拖放。只需在您的视图中添加一个“出口标识符”,引用将为您自动生成。
class MyVc: UIViewController {
// Aaah, no more clutter!
override func viewDidLoad() {
// These are auto generated in an extension of MyVc
tableView.isHidden = true
activityIndicator.isHidden = true
emptyView.isHidden = true
searchBar.isHidden = true
}
贡献
只需提交一个PR!在“问题”部分有一些问题需要解决。
感谢你的贡献!
kacperd <3