[解決済み] Storyboard - AppDelegateのViewControllerを参照する。
2022-08-26 11:24:12
質問
次のシナリオを考えてみましょう:私はストーリーボードベースのアプリを持っています。ストーリーボードにViewControllerオブジェクトを追加し、このViewController用のクラスファイルをプロジェクトに追加し、IBアイデンティティインスペクタで新しいクラスの名前を指定します。さて、このViewControllerをAppDelegateからどうやってプログラムから参照するのだろうか?関連するクラスで変数を作り、それをIBOutletプロパティにしましたが、コード内で新しいViewControllerを参照する方法が見当たりません。
つまり、AppDelegate 内では以下のようにベースの ViewController にアクセスすることができます。
(MyViewController*) self.window.rootViewController
が、ストーリーボードに含まれる他のViewControllerはどうでしょうか?
どのように解決するのでしょうか?
このページでは
のドキュメントをご覧ください。
を見てください。
-[UIStoryboard instantiateViewControllerWithIdentifier:]
. これにより、IB Attributes Inspectorで設定した識別子を使用して、ストーリーボードからビューコントローラをインスタンス化することができます。
サンプルコードを追加するために編集しました。
UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard"
bundle: nil];
MyViewController *controller = (MyViewController*)[mainStoryboard
instantiateViewControllerWithIdentifier: @"<Controller ID>"];
関連
-
[解決済み] UIViewの下に影を描くには?
-
[解決済み】SwiftでviewControllerをインスタンス化して提示する
-
[解決済み] UITextFieldのキーボードの種類をプログラムで変更する
-
[解決済み] iosアプリの最大メモリ使用量
-
[解決済み] UIImageのアスペクト比と幅を維持したリサイズ
-
[解決済み] オプションのメソッドを持つプロトコルを作成するには?
-
[解決済み] Objective-Cのプロトコルでプロパティを含むものはどう扱えばいいのか?
-
[解決済み] iPhoneシミュレーターでカメラをテストするには?
-
[解決済み] UITextFieldの高さを設定するには?
-
[解決済み] iPhoneでNSStringをAES暗号化する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] <UITabBarController: 0x197870> の外観遷移の開始/終了の呼び出しがアンバランスである。
-
[解決済み] TabBarのタブビューにプログラムで切り替える?
-
[解決済み] iosアプリの最大メモリ使用量
-
[解決済み] appdelegateでviewcontrollerの初期値を設定する - swift
-
[解決済み] プロダクションコードでNSLog()を使ってはいけないというのは本当ですか?
-
[解決済み] iOSアプリでドキュメントフォルダ内にフォルダを作成する
-
[解決済み] iPhone UIViewアニメーションのベストプラクティス
-
[解決済み] iOSアプリをクラッシュさせる確実な方法とは?
-
[解決済み] iPhoneシミュレーターでカメラをテストするには?
-
[解決済み] AppDelegate.mで画面上に現在表示されているUIViewControllerを取得する。