| 测试测试 | ✗ |
| 语言语言 | Obj-CObjective C |
| 许可证 | MIT |
| 发布最后发布 | 2014年12月 |
由 Peter Stuart 维护。
EPSReactiveTableViewController 是 UITableViewController 的子类,它自动填充一个表格视图,并通过观察模型对象数组的变更来自动动画地插入和删除行。它使用 ReactiveCocoa,并设计用于配合 MVVM 模式使用。
EPSReactiveCollectionViewController 为集合视图控制器提供类似功能。
继承 EPSReactiveTableViewController,编写一个 init 方法,在 super 上调用 initWithStyle:bindingToKeyPath:onObject: 来设置绑定。键路径的值必须是包含实现了 -isEqual: 和 -hash 方法的对象的 NSArray。数组中不应出现重复的对象。在 init 方法中,为将包含在观察数组中的对象类注册单元格类。(单元格类必须符合 <EPSReactiveTableViewCell>。)
- (id)init {
EPSExampleViewModel *viewModel = [EPSExampleViewModel new];
self = [super initWithStyle:UITableViewStylePlain bindingToKeyPath:@"sortedObjects" onObject:viewModel];
[self registerCellClass:[EPSNoteCell class] forObjectsWithClass:[EPSNote class]];
...
return self;
}如果您想了解何时单元格被点击,则订阅 didSelectRowSignal 属性。
[self.didSelectRowSignal subscribeNext:^(RACTuple *tuple) {
RACTupleUnpack(id object, NSIndexPath *indexPath, UITableView *tableView) = tuple;
// Do something with `object`
}];无需编写任何 <UITableViewDataSource> 方法。
有关如何使用 EPSReactiveTableViewController 的更完整示例,请参阅 示例项目。
要运行示例项目;克隆仓库,然后从项目目录中首先运行 pod install。
EPSReactiveTableViewController 需要 ReactiveCocoa 2.2 或更高版本。
EPSReactiveTableViewController 通过 CocoaPods 提供,要安装它,只需将以下行添加到您的 Podfile 中
pod "EPSReactiveTableViewController"或者,将 EPSReactiveTableViewController.h 和 EPSReactiveTableViewController.m 包含到您的项目中,并按照他们的 安装说明 安装 ReactiveCocoa 2.2。
EPSReactiveTableViewController 在 MIT 许可证下提供。有关更多信息,请参阅 LICENSE 文件。