0

InterfaceBuilderのストーリーボードモードで静的プロトタイプセルを使用することは避けています。ただし、これらのセルを押して詳細ビューコントローラを表示する場合は、セグエを使用したいと思います。

IBでセグエを作成しようとしましたが、(テーブルビュー自体からドラッグして)許可されないため、次のようにプログラムで作成してみました。

[[UIStoryboardSegue alloc] initWithIdentifier:@"FriendProfileSegue" source:self destination:[[BBFOtherProfileController alloc] init]];

ただし、宛先のView Controllerにセグエが実装されていないため、クラッシュが発生します。この問題を回避する方法はありますか?可能であれば、IBでセグエを作成したいと思います。

4

1 に答える 1

2

IBで簡単にセグエを作成できるはずです。Controlキーを押しながらテーブルビューセルをクリックしてから、宛先のViewControllerにドラッグします。テーブルビューセルをクリックしていて、その中のサブビューではないことを確認してください。確認するには、最初に左側のサイドパネルでテーブルビューのセルを選択してから、ダイアグラムビューでCtrlキーを押しながらクリックしてドラッグします。

通常、セグエを作成するためにIBを使用していない場合は、通常の古い方法で行うだけです。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    // Navigation logic may go here. Create and push another view controller.
    <#DetailViewController#> *detailViewController = [[<#DetailViewController#> alloc] initWithNibName:@"<#Nib name#>" bundle:nil];
    // ...
    // Pass the selected object to the new view controller.
    [self.navigationController pushViewController:detailViewController animated:YES];
}
于 2012-04-21T01:08:23.643 に答える