我用 TTListDatasource(带有 TTModel)填充我的 TTTableViewController 的情况。我的 didSelectObject 方法打开了一个 TTViewController。
我想在 TTViewController 中显示更多信息的问题。
1.问题:我应该交出数据源(并运行新查询)还是交出特定的 VO(包含所有信息)?
2.问题:如何在新的TTViewController中访问数据源?
谢谢,
我用 TTListDatasource(带有 TTModel)填充我的 TTTableViewController 的情况。我的 didSelectObject 方法打开了一个 TTViewController。
我想在 TTViewController 中显示更多信息的问题。
1.问题:我应该交出数据源(并运行新查询)还是交出特定的 VO(包含所有信息)?
2.问题:如何在新的TTViewController中访问数据源?
谢谢,
在您的 TTTableViewController 的 didSelectRowAtIndexPath: 定义中,使用您的 TTListDatasource 获取对相应对象的引用。然后将其传递给您的 TTViewController。这最好通过使用 TTViewController 的属性来完成,这样您就不必担心保留/释放。
@property (nonatomic, retain) TTModel *model;
然后在 didSelectRowAtIndexPath 中:
TTModel *model = //get the correct model
TTViewController *vc = [[TTViewController alloc] initHoweverYouWant];
vc.model = mode;
一些提示: TTViewController 听起来不太具有描述性,因为您(正确地)为您的类添加了前缀。也许 TTPhotoViewController 或其他东西可能更具描述性。总是在冗长的一面犯错:)
此外,我发现让我的 UITableViewController 子类实现 UITableViewDataSource 协议而不是创建单独的对象非常有用,除非出于完全相同的原因将在其他地方使用完全相同的数据源。如果您也使用核心数据,这与 NSFetchedResultsController 配合得更好。