2009-06-17 10 views
0

私はスワイプと削除機能のSMSの種類を実装しようとしています。TableViewスワイプの削除に必要なヘルプ

SMSアプリケーションの場合は、ナビゲーションバーの左側に[編集]ボタンがあります。行でスワイプを実行しようとすると、[編集]ボタンが[完了]ボタンに変わります。完了ボタンをクリックすると、削除モードが解除されます。テーブルビューまたはスクロールの他の場所をクリックすると、削除モードが再びキャンセルされます。

私の場合、スワイプの削除の場合にビューを変更するためのドキュメントに従ってwillBeginRowEditingとdidEndRowEditingを実装しています。 willBeginRowEditingでEdit to Doneを変更し、didEndRowEditingに戻します。スクロールや他のタッチで自動的にスワイプの削除がキャンセルされます。

しかし、ユーザーが[完了]ボタンをクリックしたときに、削除モードを解除する方法がわかりません。 tableViewの編集モードを変更するだけの場合、didEndEditingRowは呼び出されません。

スワイプの削除モードから出るAPIはありますか?

お知らせください。

+0

問題の解決方法が見つかりました。私はちょうどそれが働いたtableViewの完了ボタンからアクション内の[self.tableView setEditing:いいえアニメーション:はい]を呼び出さなければならなかった。また、willBeginEditingでビューを変更した場合は、[完了]ボタンを押したときに変更を元に戻す必要があります。基本的にdidBeginEditingでやろうとしたことは、Doneボタンからも同じことができます。 役に立ったと思っています – siasl

答えて

1

スワイプの削除方法を使用してキャンセルする必要があるのはなぜですか?彼らが削除をスワイプして元に戻したい場合は、再びスワイプしてください。

+0

他のタッチまたはスワイプでスワイプジェスチャーがキャンセルされても問題ありません。 しかし、ナビゲーションバーに[完了]ボタンがあり、SMSアプリの場合は、それを押してもスワイプがキャンセルされます。 私は2つのオプションが必要です:編集ボタンをスワイプモードで完全に消す(または無効にする)か、または完了ボタンを変更すると、SMSアプリケーションと同じキャンセル機能を模倣する必要があります。しかし、私はスワイプのジェスチャーをキャンセルするためのAPIを見つけられないようです。 – siasl

関連する問題