0

サブクラスをコンテンツビューとしてUITableView含むグループ化されたそれぞれを使用しています。UITextFieldサブクラス化されたには、テーブル内での位置を格納するUITextFieldための追加のプロパティのみが含まれています。indexPath

私が直面している問題は、どのテキスト フィールドが現在のレスポンダーであるかを記録したいのでUITextField、View Controller にプロパティを追加したことです。デリゲート メソッドを実装しtextFieldDidBeginEditing、メソッドが呼び出されると、textFieldポインター引数がビュー コントローラーの最初のレスポンダー プロパティとして格納されます。

使用中、フィールドは最初はフォーカス可能ですが、キーボードを押しReturnて編集を終了すると、キーボードが消え、元のテキスト フィールドやテーブル内の他のテキスト フィールドにフォーカスを戻すことができなくなります。

self.firstResponder = (LKCTableViewTextField *)textField;デリゲート メソッドから行を削除すると、textFieldDidBeginEditingすべて期待どおりに機能しますが、テキスト フィールドへのポインターがファーストレスポンダーとして設定されていません。

誰かがこの問題を抱えているか、何が起こっているか知っていますか?

ありがとう、

エリック

4

1 に答える 1

0

申し訳ありませんが、正しく理解されていません。テキストフィールドへの参照を保存するのに役立つかどうかを確認してください。

- (void)textFieldDidBeginEditing:(UITextField *)textField
{
    activeField = textField;
}
于 2013-08-18T04:14:50.773 に答える