2011-02-02 9 views
6

私は、アプリケーションが起動するたびにデフォルトでView Controller 'MyAppViewController'をロードする 'MyApp'というアプリケーションを持っています。その後、プロジェクトに新しいView Controller「NewViewControler」を追加しました。アプリの起動時に読み込まれるデフォルトのView Controllerを変更するにはどうすればよいですか?

私は、 'NewViewController'を、アプリケーションの起動時にロードするデフォルトのビューコントローラにしたいと考えています。

これを達成するために私のプロジェクトでどのような変更が必要か教えてください。

答えて

7
  1. MainWindow.xibを開き、MyAppViewControllerをNewViewControllerに置き換えます。
  2. アプリケーションデリゲートクラスでは、MyAppViewControllerのプロパティをNewViewControllerのプロパティに置き換えます。 NewViewControllerをInterface Builderの新しいコンセントに接続します。
  3. application:didFinishLaunchingWithOptions:で、MyAppViewControllerのビューではなくウィンドウにNewViewControllerのビューを追加します。
+0

RE#1:クラスを変更するだけでMyAppViewControllerをNewViewControllerに変更すると、Interface Builderが混乱することがあります。私のアプリはビルドされていましたが、それを実行したときにクラッシュしてしまいましたが、私が当然削除した古いView Controllerタイプをロードしようとしました。 MainWindow.xibのMyAppViewControllerを削除し、View Controllerを追加してNewViewControllerにクラスを変更し、App DelegateコンセントをNewViewControllerに再配線することで修正できました。 YMMV。 – gulchrider

2

主なNIBファイルは "MainWindow"に設定されている可能性が高いので、* -Info.plistファイルを確認してください。

この場合、Interface BuilderでMainWindow.xibを開くことができます。 View Controller項目が表示されます。インスペクタウインドウを開き、新しいクラスを指すようにクラスIDを変更します。それはあなたのクラスをインスタンス化する世話をする必要があります。

これは(私が間違ってるなら、私はご容赦ください)「初心者」質問のように感じているとして、私はまた、非常に次の資料をお勧めします:

iPhone Programming Fundamentals: Understanding View Controllers

は私が全体のViewControllerの事を理解して助け、 IBのやり取り..

+0

Ole Begemannは、実際にAppDelegate内の参照を変更し、IBと結びつけるべきだと述べています。リンクされた記事もこれを示しています。 – adnans

0

xcode 4.3.3の私にとっては、AppDelegateのhとmファイルで 'MyAppViewController'のすべての参照を 'NewViewController'に置き換えるだけでした。

xcodeの新しいバージョンではおそらく他のすべての手順が実行されています。

これが役に立ちます。

15

、ただ簡単にその:

  • あなたが最初のビュー
  • オープン属性にインスペクターになりたいビューに対応するビューコントローラ上のあなたのストーリーボード
  • クリックを開き
  • 選択View Controllerセクションの「Initial View Controllerは」チェックボックス
関連する問題