2009-05-15 15 views
-1

私はカスタムセルを持っています。これを達成するには、カスタムセル自体にボタンがクリックされたときにそのセルを削除したいと思います。誰かが私はあなたがどのセルのindexPathを知っておく必要がありUITableViewからカスタムセルを削除する方法は何ですか?

まずあなたの代わりに、標準の削除動作を使用するのではこれをしたい理由は何日からこれを確認してください

答えて

3

を未立ち往生、しかし...午前助けますそのボタンが押されています。したがって、ボタンのアクションを受け取るようにカスタムセルを配線し、そのセルでテーブルのindexPathForCellメソッドを呼び出して、indexPathを取得する必要があります。

これを取得したら、indexPathをNSArrayの内側に置き、テーブルのdeleteRowsAtIndexPathsメソッドに渡します(また、セルを削除するアニメーションのタイプも選択します)。これにより、dataSourceのcommitEditingStyleメソッドも呼び出され、基礎となるデータも削除できます。

このようにすることで、ユーザーが通常削除を要求してから確認する必要がある、テーブルに組み込まれている2段階の削除プロセスをバイパスしていることに注意してください。だから、安全のために、おそらくあなた自身のようなものを実装したいと思うでしょう。

また、表のセルをスワイプするデフォルトの動作は、削除ボタンを表示することです。 editingStyleForRowAtIndexPathデリゲートメソッドをオーバーライドし、そのセルにUITableViewCellEditingStyleNoneを返すことで、デフォルトの処理を行わないようにすることができます。

+0

このサンプルコードを投稿してください。私はまだこれを理解していない –

関連する問題