1

私はiOS開発の初心者です。本からサンプルを作成しようとしていますが、xib の代わりにストーリーボードを使用しています。ビューの 1 つにいくつかのボタンを追加し、ビューコントローラーを割り当てました。アクションでビューを表示するために presentModalViewController を呼び出そうとしましたが、表示されたビューには何も表示されません。viewdidload にいくつかのコードを追加すると、動作します。しかし、ストーリーボードにあるボタンが見えるのはなぜですか?

4

1 に答える 1

1

performSegueWithIdentifier:sender:ビューコントローラーを自分でインスタンス化して提示するのではなく、を使用する必要があります。その後、ストーリーボードから逆シリアル化されます。

ストーリーボードをトランジションの保持領域として使用したい場合は、ストーリーボードを逆シリアル化し[self.storyboard instantiateViewControllerWithIdentifier:@"whatever"]、結果を表示します。しかし、それはストーリーボードが機能することを意図した方法ではありません。その意図は、セグエで宛先と遷移の両方を指定することです。モーダルとして表示されることは、定義したセグエの一部にすぎません。

次のように考えてください。ストーリーボードは、XIB を直接置き換えるものではありません。XIB は、単一のビュー コントローラーのコンテンツを定義します。ストーリーボードは、多くのビュー コントローラーとそのコンテンツを定義するだけでなく、ビュー コントローラーが相互に対話する方法も定義します。

于 2013-10-29T02:56:57.093 に答える