-[UITableViewCell setEditing:animated:] は表示の度に呼び出される

2010年8月2日月曜日 | Published in | 0 コメント

このエントリーをはてなブックマークに追加

UITableViewCell Class Reference

-[UITableViewCell setEditing:animated:] が呼び出されるタイミングは次の3つ。

1. 明示的にメソッドを呼び出した時
[cell setEditing:YES animated:YES]

2. セルが載っている UITableView で setEditing:animated: が呼ばれた時
[self.tableView setEiditing:YES animated:YES]

3. 隠れていたセルが表示される時

- - - -
3. が曲者。てっきり 1, 2のケースだけだと思い込んでセル上の編集モードに入った時の初期化コードを書いておいたら、意図せず毎回初期化されてハマってしまった。UITableView でスクロールなどした時に隠れていたセルが表示されるタイミングで setEditingの値に関係なく必ず呼び出される。通常 UITableViewCell は再利用されるので、編集モードを正しく保つために毎回呼び出しているのだと思われる。

Responses

Leave a Response

人気の投稿(過去 30日間)