1

Xcode 4.3.3 と iOS 5.1 を使用して、iPad アプリを開発しています。

ナビゲーション バー (ストーリーボード内) の titleView として UITextField があり、次のようにアウトレットに接続されています。

@property (weak, nonatomic) IBOutlet UITextField *textFieldName;

viewDidLoad の実装の最後に、次のように呼び出します。

[self.textFieldName becomeFirstResponder];

そして...何も起こりません。UITextField をタップしてアクティブにできますが、ビューの起動時にフィールドをアクティブにできないようです。

背景: 前のビュー (UITableView) に行を追加すると、このビューにセグエされ、通常はビューのタイトルとして表示されるものが空の場合にテキスト フィールドを有効にしたいと考えています。つまり、データベースに新しい行を作成するときに、ユーザーの最初のアクションがタイトルの入力になるようにしたいと考えています。私は他のアプローチを受け入れていますが、述べられた質問を達成する方法を知りたいと思っています。

編集

次のように呼び出して動作させることができました:

 [self.navigationItem.titleView becomeFirstResponder];
4

1 に答える 1

0

そこにあるコードは機能しているはずです。

UITextFieldDelegateを追加するなど、見逃している可能性のある簡単な手順があると思います。各ステップを実行して、どれが機能していないかを把握することをお勧めします。それでも問題が解決しない場合は、Xcodeprojを投稿してください。私(または他の誰か)が詳しく調べることができます。

于 2012-07-06T02:41:11.960 に答える