0

他の2つのViewControllerから移行できるTableViewControllerがあります。1つはセグエによって遷移し、もう1つはプログラムで遷移します。セグエを介して移行する場合はすべて正常に機能しますが、プログラムによる移行後にTableViewControllerが表示されると、UIBarButtonItemが欠落し、セルセグエが機能しません(ユーザーを新しい画面に移動する必要があります)。

UIBarButtonItemとセルセグエはストーリーボードで設定されているため、TableViewControllerがプログラムで読み込まれるときに読み込まれないと思います。だから、どこかに手動でロードする必要があると思います。私の質問は、これを行うのに適切な場所はどこですか?

読んでくれてありがとう。

編集: トランジションのコードは次のとおりです。

OtherTVC *otherTVC=[[OtherTVC alloc] init];
[self.navigationController pushViewController:otherTVC animated:YES];

これは、マップピンのコールアウトアクセサリにリンクされています。

4

1 に答える 1

1

ストーリーボードで作成されたコントローラーのインスタンスを取得するには、コントローラーに識別子を付けて、ルートinstantiateViewControllerWithIdentifier:ではなくを使用してみてください。alloc/initコードが実行されている現在のコントローラーが同じストーリーボードからのものである場合、storyboardその呼び出しを行うために、コントローラーのプロパティを介してそのコントローラーへの参照を取得できます。

于 2012-12-04T12:40:12.587 に答える