2012-03-13 6 views
27

iOS 5では、UITableViewでallowsMultipleSelectionDuringEditingをYESに設定すると、スワイプ・ツー・イレーズは機能しなくなりました。組み込みメールアプリケーションは、編集モードでのスワイプと削除の両方の選択をサポートしています。同様にしたいと思います。これをどのように達成するのですか?tableViewのallowsMultipleSelectionDuringEditingプロパティがYESのときにスワイプを削除する方法を教えてください。

答えて

60

トリックは、編集モードに入るとallowsMultipleSelectionDuringEditingをYESに設定し、編集モードを終了するとNOに戻すように設定されています。このようにして、編集モードでスワイプして削除したり、複数選択することができます。あなたは(あなたはおそらく持っている)UITableViewControllerをサブクラス化している場合

、あなたは、単にこれを行うことができます。

- (void)setEditing:(BOOL)editing animated:(BOOL)animated 
{ 
    // Set allowsMultipleSelectionDuringEditing to YES only while 
    // editing. This gives us the golden combination of swipe-to-delete 
    // while out of edit mode and multiple selections while in it. 
    self.tableView.allowsMultipleSelectionDuringEditing = editing; 

    [super setEditing:editing animated:animated]; 
} 
+0

これが必要であることは非常に奇妙です。 –

+0

これらの行の順序が正しいことを確認してください。それは重要です! –

+0

ありがとうございました...!これは魅力のように機能します! :D –

関連する問題