-1

UITableViewの行を削除したいのですが、スワイプではなく、iPhoneのメッセージ削除機能と同様の方法で削除ボタンを提供する必要があります。[編集]をクリックすると、セルの左側に小さな赤い円が表示されます。この円は、クリックすると回転し、削除ボタンが表示されます。これを実装する方法は?

下の画像のように:

ここに画像の説明を入力してください

4

2 に答える 2

2

これを実現する方法の詳細については、こちらのAppleのドキュメントを参照してください。特に:

setEditing:animated:メッセージ(最初のパラメーターが )が送信されると、テーブルビューは編集モードになり、関連YESする各行に応じて、表示されている各行の編集または並べ替えコントロールが表示され ます。挿入または削除コントロールをクリックすると、データソースは :メッセージを受信します。必要に応じて、 :または :を呼び出して、削除または挿入をコミットし ます。editingStyleUITableViewCelltableView:commitEditingStyle:forRowAtIndexPathdeleteRowsAtIndexPaths:withRowAnimationinsertRowsAtIndexPaths:withRowAnimation

于 2012-05-21T12:42:35.863 に答える
0

self.navigationItem.leftBarButtonItem = self.editButtonItem;これをviewDidLoadメソッドに記述 します。その後、このメソッドを実装します- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {

    if (editingStyle == UITableViewCellEditingStyleDelete) {



        [yourArray removeObjectAtIndex:indexPath.row];
        [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:YES];


    }
}
于 2012-05-21T13:13:39.763 に答える