BFWControls
一个用于通过 Interface Builder 简化构建应用程序的框架。
一些有用的资源
- "像乐高一样构建应用程序"教程 - 通过构建组件和 BFWControls 的 NibTableViewCell,以可视化的方式逐步构建应用程序。假设没有任何编码或 Xcode 知识。 https://medium.com/@barefeettom/build-app-lego-tutorial-1-58de8e84798d
- CocoaHeads Sydney 上的演讲视频(16分钟):http://www.barefeetware.com/presentation/20181127_CocoaHeads_Sydney.mp4
- CocoaHeads New York City 上的演讲视频(18分钟):http://www.barefeetware.com/presentation/20180809_Xcode_Lego_NYCCocoaHeads.mp4
BFWControls 包含许多功能,可简化以可视方式构建应用程序,尤其是在使用 Interface Builder 时。功能包括:
- NibReplaceable 协议和 NibView、NibTableViewCell 类:将 xib 布局加载到子类中,无需额外的代码。
- UITableView 的可调节协议:粘性头部和尾部在表格滚动时保持固定。
- HidingStackView:一个堆叠视图,它会隐藏任何具有不可见内容的子视图(例如 UILabel.text == nil 和 UIImageView.image == nil)或具有所有子视图都隐藏的 UIStackView 子视图。当堆叠视图有一个隐藏的子视图时,它会将其从 arrangedSubviews 中移除,从而释放它所占用的空间,本质上缩小了任何未使用的空间。
- UIView+NSLayoutConstraint:方便的 AutoLayout 函数,如 pinToSuperviewEdges()、pinToSuperview(with inset: CGFloat)
- StaticTableViewController:excludedCells:轻松动态显示/隐藏单元格和部分
- SegueHandlerType 协议:枚举 SegueIdentifier
- UIApplication:unwindToBackmostViewController()
- UIViewController+Unwind unwindToSelf() frontViewController
- DefaultsHandlerType 协议:将 UserDefaults 以命名变量公开