2011-07-21 10 views
2

私は現在、削除ボタンをクリックするとUITableViewからいくつかのものを削除したいアプリケーションに取り組んでいます。今すぐ編集ボタンが表示され、削除することができますが、削除することができないようにするセルがいくつか表示されています。誰もがこれを実装する簡単な方法を知っていますか?このlinkを見ると、私のセルの3つすべてが削除表示で表示されますが、最初の2つは移動し、最後の2つは動かないことが必要です。特定のUITableViewCellで削除を表示するだけです

答えて

2

オーバーライドこの方法:

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath { 

    if ({SOMETHING TO SAY IF THIS CELL CAN NOT BE DELETED}) { 
     return NO; 
    } 
    return YES; 
} 
+0

これはまさに正しい答えです! – msgambel

0

上書きする方法はUITableViewDataSource Protocol Reference上に読む

tableView:commitEditingStyle:forRowAtIndexPath: 

です。この方法の議論から:

ユーザーが挿入(グリーンプラス)コントロールをタップするか、テーブルビューにUITableViewCellオブジェクトに関連付けられたボタン を削除すると、表 ビューが求めて、データソースにこのメッセージを送信それは 変更をコミットすることです。 (ユーザが削除(赤マイナス)コントロールをタップした場合、表 ビューは、確認を得るために削除ボタンを表示する。)データ ソースは、適宜、UITableView 方法insertRowsAtIndexPaths:withRowAnimation:又は deleteRowsAtIndexPaths:withRowAnimation:を呼び出すことによって、挿入または欠失をコミット。

+0

うん、それは私は、ユーザーが行を削除することはできませできるようになりますが、ちょうどさえ赤い丸でも現れていないようにする方法はありますか?私はちょうどユーザーが行を削除しようとしていない。私は特定の行に赤い円を表示し、すべての行を表示しないようにします。私は赤い円を隠すことができますが、私はセルをスライドさせたくないと知っています。私は、削除することができるものに移動する細胞だけを望んでいます。 – mrbaker

+0

@mrbaker:面白い質問。私はそれが可能かどうかは分かりませんが(私は思っていませんが)、私がそうでないと分かった場合、私はあなたに戻ってきます。ありがとう。 – PengOne

+0

ありがとう。はい、私はちょうどそこに方法があるように感じるが、私は完全にはわからない。私は移動しないで常にuiviewを表示するカスタムセルを作成することを考えていたが、どちらかがうまくいくかどうかは完全にはわからない。 – mrbaker

関連する問題