情况 我使用TTListDatasource(使用TTModel)填充我的TTTableViewController。 我的didSelectObject方法打开了一个TTViewController。
问题 我想在TTViewController中显示更多信息。
1.问题:我应该移交数据源(并运行新查询)还是应该移交特定的VO(包含所有信息)?
2.问题:如何在新的TTViewController中访问数据?
感谢,
答案 0 :(得分:0)
在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更有效。