ビューコントローラーをモダンに提示 - iPad
-
22-09-2019 - |
質問
モーダルビューを表示するためにこのコードを見つけました:
- (void)add:(id)sender {
// Create the root view controller for the navigation controller
// The new view controller configures a Cancel and Done button for the
// navigation bar.
RecipeAddViewController *addController = [[RecipeAddViewController alloc]
initWithNibName:@"RecipeAddView" bundle:nil];
addController.delegate = self;
// Create the navigation controller and present it modally.
UINavigationController *navigationController = [[UINavigationController alloc]
initWithRootViewController:addController];
[self presentModalViewController:navigationController animated:YES];
// The navigation controller is now owned by the current view controller
// and the root view controller is owned by the navigation controller,
// so both objects should be released to prevent over-retention.
[navigationController release];
[addController release];
}
私の質問は、このコードをどのように実装するかです(ボタンプレスメソッドに配置するつもりです)
ヘッダーファイルに何かを定義する必要がありますか?私を混乱させるビットは、Appleがこれを提供し、ヘッダーファイルを提供しないので、何かがそこにあるべきかどうかわかりませんか?
コードは、RecipieAdDviewControllerを参照しています。
Headerfileにデリゲートとして何を置きますか?これを他の場所にセットアップする必要がありますか?プロパティのように?
私のボタンプレス方法にこのコードを機能させるためにこのコードを持っていると、他に何かする必要があることはありますか?
すべての質問をありがとう。
解決
私の質問は、このコードをどのように実装するかです(ボタンプレスメソッドに配置するつもりです)
メソッドを次のように定義します IBAction
お気に入り -(IBAction)add:(id)sender
インターフェイスビルダーでボタンをバインドします touch up inside
ビューコントローラーオブジェクトへのイベント add:
アクションアウトレット。
ヘッダーファイルに何かを定義する必要がありますか?私を混乱させるビットは、Appleがこれを提供し、ヘッダーファイルを提供しないので、何かがそこにあるべきかどうかわかりませんか?
いいえ。このものはすべて必要です UIKit.h
通常、ヘッダーを変更して、メソッドを追加したり、インスタンス変数を追加したり、カスタムクラスを含める必要があります。必要になる場合があります #import RecipeAddViewController.h
ただし、そのクラスを使用するために、どこか(ヘッダーまたは実装ファイル内)。これは、別のファイルで使用したいカスタムクラスに当てはまります。
コードは、RecipieAdDviewControllerを参照しています。
それを押したいビューコントローラークラスに置き換えます。 UIViewController
それ自体が裸で有用であることはめったにありません。それはサブクラス化するために作られています。そのため、継承する新しいクラスを作成します UIViewController
, 、ヘッダー、作成、インスタンスをインポートし、ナビゲーションコントローラーにプッシュします。