Bohr可以帮助您根据三个原则来设置应用设置屏幕:易用性、自定义性和可扩展性。
默认情况下,Bohr支持多种设置类型,如字符串、布尔值或时间。然而,这个框架已经考虑到可扩展性,这意味着您可以构建自己的自定义类来支持您想要的任何类型设置。
“Bohr”源于尼尔斯·玻尔,他是原子模型的创造者,提出了电子 排布 的概念,这是一种按层组织电子围绕原子核的方式。
这是一个真实的故事。
将Bohr文件夹中的所有文件拖动并复制到您的项目中。
您将要设置的设置屏幕表示为名为 BOTableViewController
的 UITableViewController
子类。这样的控制器管理 BOTableViewSection
实例,而每一个则管理一套 BOTableViewCell
实例。
这是一个在演示项目中包含的真正简单的设置的示例。请查看以查看完整的实现。请注意下面的代码位于子类化 BOTableViewController
的 setup
方法中。
- (void)setup {
[self addSection:[BOTableViewSection sectionWithHeaderTitle:@"Section 1" handler:^(BOTableViewSection *section) {
[section addCell:[BOSwitchTableViewCell cellWithTitle:@"Switch 1" key:@"bool_1" handler:nil]];
}]];
}
有几个内置的 BOTableViewCell
子类可以立即使用。
BOSwitchTableViewCell
:使用 UISwitch
控件管理 BOOL
值。BOTextTableViewCell
:使用 UITextField
控件管理 NSString
值。BONumberTableViewCell
:使用 UITextField
控件管理 NSNumber
值。BODateTableViewCell
:管理表示特定日期的 NSDate
值。使用一个揭示的 UIDatePicker
来设置时间。BOTimeTableViewCell
:管理表示特定时间的 NSDate
值。使用一个揭示的 UIDatePicker
来设置时间。BOChoiceTableViewCell
:通过点击单元格本身来管理 NSInteger
值(您可以将其理解为来自 NS_ENUM
的“选项”)。BOOptionTableViewCell
:管理单个 NSInteger
值(可以理解为来自 NS_ENUM
的“选项”),具体取决于其在表格视图部分中的位置。当选中时,右侧将出现勾选标记。BOButtonTableViewCell
:当用户轻击单元格时允许执行操作。构建 BOTableViewCell
子类相当简单。
首先,框架中包含一个名为 BOTableViewCell+Subclass.h
的头文件。您必须在子类实现文件中引入该头文件
#import <Bohr/BOTableViewCell+Subclass.h>
这样您就可以访问您在子类中可以实施的所有可能的元素。
请查看一些内置的单元格,以获得关于如何子类化 BOTableViewCell
的更详细演示。
Bohr 在 MIT 许可证下可用。