2つの解決策が思い浮かびます。
1)セルが少ないので、リサイクルしないでください。起動時にセルを作成し、簡単に取得できる配列に配置します。次に、tablviewがセルを要求したら、セルを引き出します。配列。
次に進みたいときは、同時にテーブルビューにそのような場所またはセルにスクロールするように指示し、セルを配列から引き出し、画面外のフレームでビューに追加して、表示されないようにします。 textFieldを最初のレスポンダーにします(キーボードを上げたままにするため)。tableViewがセルを要求するとき、フレームをリセットするか、フレームをリセットしてビューから削除する必要がある場合があります。これを行う必要がある場合は、すぐにファーストレスポンダーにする必要があります(テキストフィールドがファーストレスポンダーを辞任しないように、ブロックをメインキューにディスパッチします。
2)同様に、セルのtextFieldを最初のレスポンダーにし、それが表示されているセルに含まれるようにする場合は、スクロールして最初のレスポンダーにすることができます。それがvisibleCellsにない場合は、セルを作成し、上記のようにビューに追加し、上記のようにファーストレスポンダーの処理を行い、そのセルのインデックスを求められたら、そのセルを指定し、場合によってはフレームをリセットします。
私はオフスクリーンのtextFieldsを使用して、キーボードでトリックをプレイしました(キーボードを維持したり、起動したりするためなど、それが機能することはわかっています)。私にとってそれほど確実ではないのは、textFieldがビューにあるかどうかのトリックです。
これは私に第三の道を考えさせます。UITextFieldを画面外のビューに配置します。切り替えたいが、セルがまだ表示されていない(つまり、作成されていない)場合は、オフスクリーンのtextFieldにfirstReponderを指定し、tableViewのスクロールを追跡します。これで、textFieldが終了すると、最初のレスポンダーが表示されます。そのため、キーボードを上げたまま、firstResponderを転送(つまり設定)できます。