テーブル アイテムに開示矢印を表示し、別の「詳細」画面にリンクするようにします。かなり標準的。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];
}
}
しかし、 TTTableItemがクリックされたTTViewController
ときに、オブジェクト (文字列だけでなく) を渡す必要があります。TTNavigatorのメソッドを使用して、オブジェクトを
TTViewControllerに渡すことができることを私は知っています。NSDictionary
[[TTNavigator navigator] openURL: query: animated:]
ただし、この URL を から開こうとしているので、クエリオブジェクトTTTableItem
を渡すことができる openURL メソッドを使用する方法がわかりません。NSDictionary
NSString
ここでの議論を読みましたが、元の Three20 コードを変更する必要はありません。ちゃんと伸ばせばOKです。
TTViewController
テーブル項目を開いてオブジェクト ( などNSDictionary
)を渡す最も簡単な方法は何ですか?