0

tableViewController で viewDidLoad 関数を使用したいと思います。コントローラで viewDidLoad を実行するにはどうすればよいですか?

tableViewController = [[TableViewController alloc] init];
UITableView *tableView = [[UITableView alloc] init];
tableViewController.view = tableView;
....
4

3 に答える 3

2

Apple のドキュメントから:

このメソッドは、View Controller がそのビュー階層をメモリにロードした後に呼び出されます。このメソッドは、ビュー階層が nib ファイルからロードされたか、loadView メソッドでプログラムによって作成されたかに関係なく呼び出されます。通常、このメソッドをオーバーライドして、nib ファイルからロードされたビューで追加の初期化を実行します。

そのため、NIB からインスタンス化するか、loadView メソッドを上書きすることができます。Apple のドキュメントからの別のステップ:

ストーリーボードまたは nib ファイルでビューを定義できない場合は、loadView メソッドをオーバーライドして、ビュー階層を手動でインスタンス化し、それをビュー プロパティに割り当てます。

于 2012-10-09T11:58:13.960 に答える
1

viewDidLoadビューが実際にロードされたときに呼び出されます。これは、View Controller を提示した後に発生します。たとえば、次のようになります。

  1. それをナビゲーションコントローラーに追加し、

  2. タブバーコントローラーに追加し、

  3. モーダルに提示します。

これは、コードに欠けているビットです。View Controller をどのように表示したいかを説明していただければ、さらにお役に立てるかもしれません。また、これを見てください: Presenting View Controllers

(テーブルビューコントローラーのプロパティをオーバーライドしようとしたという事実は、view「物事を機能させる」ための試みにすぎないと思いますが、それについて何もする必要はありません。ビューコントローラーは、その中のテーブルビュー)。

于 2012-10-09T11:58:46.070 に答える