我希望我的表格项目显示披露箭头并链接到另一个“详细信息”屏幕。很标准。Three20 应该可以帮助解决这个问题。
在我的 TTListDataSource 中,我目前正在做:
- (void)tableViewDidLoadModel:(UITableView *)tableView
{
[super tableViewDidLoadModel:tableView];
// Construct an object that is suitable for the table view system
// from each domain object that we retrieve from the TTModel.
for (Listing *result in [(id<SearchResultsModel>)self.model results]) {
NSString *url = [NSString stringWithFormat:@"myapp://listing", result.theID];
TTTableSubtitleItem *item = [TTTableSubtitleItem itemWithText:result.title subtitle:result.desc imageURL:result.imageURL defaultImage:nil URL:url accessoryURL:nil];
[self.items addObject: item];
}
}
但是我需要在单击TTTableItemTTViewController
时将一个对象(而不仅仅是一个字符串)传递给。我知道您可以使用以下方法将对象传递给
TTViewController:TTNavigator的方法。NSDictionary
[[TTNavigator navigator] openURL: query: animated:]
但是,由于我试图从 a 打开这个 URL TTTableItem
,我不知道如何使用 openURL 方法来传递一个查询NSDictionary
对象,因为它都作为一个NSString
“URL”参数。
我在这里阅读了讨论,但是我真的非常想避免修改原始 Three20 代码。如果它可以适当地扩展,那就没问题了。
我可以让我的表项打开 aTTViewController
并传递一个对象(例如 an NSDictionary
)的最简单方法是什么?