0

編集/保存ボタンをBarItemとして持つUITableViewControllerがあります。編集モードで UITextField を表示するカスタム セルがあります。フォーカスを別のセルなどに移動すると、変更されたテキストを保存できます。問題ありません。ただし、フィールドを変更しようとして、setEditing:NO save などをトリガーする [保存] ボタンを押すと、問題が発生します。私が信じているのは、editingDidEnd が処理される前に保存アクションがトリガーされる競合状態であり、その結果、すべてを保存していません。データの。
これを処理する方法について何か提案はありますか? 保存時にすべてのデータを保存するには、表示されているすべてのセルを調べる必要がありますか? 私は間違いなくそれを行うことができますが、スクロールして編集ボタンをクリックすると同じ問題が発生しますか? メッセージング キューをフラッシュするより良い方法はありますか?

4

1 に答える 1

0

私にはテイカーがいないことを考えると、私は私が知っていることに固執していると思います:

  1. 完了/保存(つまり、setEditing:NO)処理では、すべてのセルを調べてデータを保存します
  2. 変更があるたびにデータを更新し続けます。つまり、値が変更された可能性があります
  3. UITextFieldDelegateとtextFieldShouldEndEditingを使用してみますが、おそらく私と同じ問題が発生するため、これが機能するかどうかはわかりません。

setEditing内のendEditingは、テキストフィールドのファーストレスポンダーを辞任することになっているため、問題を解決すると思います。

于 2013-02-21T00:22:27.357 に答える