EPSReactiveTableViewController 1.1.1

EPSReactiveTableViewController 1.1.1

测试测试
语言语言 Obj-CObjective C
许可证 MIT
发布最后发布2014年12月

Peter Stuart 维护。



  • Peter Stuart

EPSReactiveTableViewControllerUITableViewController 的子类,它自动填充一个表格视图,并通过观察模型对象数组的变更来自动动画地插入和删除行。它使用 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.hEPSReactiveTableViewController.m 包含到您的项目中,并按照他们的 安装说明 安装 ReactiveCocoa 2.2。

许可证

EPSReactiveTableViewController 在 MIT 许可证下提供。有关更多信息,请参阅 LICENSE 文件。