ナビゲーション コントローラーを使用して詳細ビューにドリルダウンするコア データ アプリケーションがあり、詳細ビューでデータ行の 1 つを編集すると、Apple の CoreDataBooks のように、その 1 行の編集ビューに移動します。例(CoreDataBooksは、私UITextField
のようなサブビューではなく、単独でのみ使用することを除いてUITableViewCell
)!
編集ビューはUITableviewController
、単一セクションの単一行とUITextfield
セル内のテーブルをプログラムで作成するものです。
私がしたいのは、編集する行を選択し、編集ビューがナビゲーション スタックにプッシュされ、編集ビューが画面上を移動するアニメーションになっている場合です。テキスト フィールドを firstResponder として選択して、キーボードが既に表示されているようにします。ビューが画面上を移動して位置を決めるとき。連絡先アプリや CoreDataBooks アプリと同様です。
現在、アプリに次のコードがあり、ビューが読み込まれ、キーボードが表示されます(これは私が望んでいるものではありません。キーボードが既に存在することを望んでいます)
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[theTextField becomeFirstResponder];
}
-viewWillAppear
テキストフィールドがまだ作成されていないため、これを入れることはできませんtheTextField
。彼らが欲しいものを達成するCoreDataBooksアプリでは、ペン先からビューをロードするので、同じコードを使用しますが-viewWillAppear
、テキストフィールドはすでに作成されています!
いずれにせよ、ペン先を作成せずにこれを回避する方法はありますか?私は実装をプログラム的に維持して、柔軟性を高めたいと考えています。
どうもありがとう