2011-11-08 5 views
13

UITableViewのセルにはUITextFieldオブジェクトが含まれていますが、最初のレスポンダはそのセルが再利用されないようにするオブジェクトですか?UITableViewCellの最初のレスポンダステータスを持つUITextFieldはセルの再利用を防ぎますか?

例えば、UITableViewが画面に収まるよりも多くの行を持つ場合、UITextFieldをタップしてそのセルのフィールドのキーボードを表示することができます。次に、テーブルビューをスクロールしてそのセルを画面から外します。セルにスクロールすると、UITextFieldを含むセルを除いて、すべてのセルに対して-tableView:cellForRowAtIndexPath:への呼び出しを見ることができます。

この現象は、iOSが自分のセルに最初のレスポンダが含まれていることを認識しているため、セルを破棄しないよう選択しているため、データソースを呼び出してビューに戻るときにセルを取得する必要はありません。

この動作は望ましいことですが、この動作が保証されていることを示すドキュメントはありませんでしたし、それが真でない条件がある場合は頼りたくありません。

誰もが、この状況をカバーするテーブルビューのセル再利用と最初のレスポンダーに関するドキュメントを教えていただけますか?

+1

UITableviewCellをサブクラス化し、メソッド - (void)prepareForReuse {}を上書きして、セルが再利用できるかどうかを確認できますか? – imthi

+0

これは文書化されているかどうかはわかりませんが、確かに1つのことは確かです。それは自動的なようだから、考慮する必要はありません。 –

答えて

3

公式のiOS SDKのドキュメントにそのような参照はありません。あなたは、あなたが観察しているこの行動が保証されておらず、依拠してはならないことを心配するのは間違いありません。

関連する問題