さまざまなアイテムを表示する複数のテーブル ビューがあります。ただし、各セルの詳細ビューは同じレイアウトにする必要があります。ほとんど同じコードになるため、テーブルごとに異なる詳細ビュークラスを実装する必要なく、各テーブルのすべてのセルに同じ詳細ビューを使用したいと考えています。どうすればいいですか?
次のメソッドは、テーブル ビューの 1 つにあります。これにより、セルが選択されたときに詳細ビューが表示されます。
-(void)tableView:(UITableView *)tv didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"didSelectRowAtIndexPath");
AppDelegate *delegate =
(AppDelegate *)[[UIApplication sharedApplication] delegate];
Detail *detail=
[[Detail alloc] initWithIndexPath:indexPath];
[delegate.navController pushViewController:detail animated:YES];
[tv deselectRowAtIndexPath:indexPath animated:YES];
}
以下は、Detail ビュー クラスの viewDidLoad メソッドです。
- (void)viewDidLoad
{
[super viewDidLoad];
AppDelegate *delegate =
(AppDelegate *)[[UIApplication sharedApplication] delegate];
PokemonInfo *thisPokemon = [delegate.allArray objectAtIndex:index.row];
self.title = thisPokemon.name;
nameView.text = thisPokemon.name;
typeView.text = thisPokemon.type;
attackView.text = thisPokemon.attack;
attackView.editable = NO;
}