1

ユーザーが UITableViewCell の削除操作をキャンセルしたときに呼び出されるデリゲート メソッドを知りたいです。「なぜこれが必要なのですか?」という潜在的な質問に答えるために、シナリオは次のとおりです。

UILabel にアイテムが表示され (メイン ビューに左揃え)、その価格が別の UILabel (メイン ビューに右揃え) に表示されるテーブル ビューがあります。ここで、ユーザーが赤い (入力なしのような) ボタンを押してアイテムを削除すると、セル全体が左にインデントされ、表示されないために価格の半分が切り取られます。これはかなり見栄えが悪いので、この「削除前」ボタンを押すと価格ラベルを非表示にします (問題なく動作します)。しかし、ユーザーがセルを削除せずに削除ボタンを閉じたときに値札を表示したいと思います。しかし、テーブルビュー セルの cancelDelete のようなイベントが見つかりません。

ありがとう:-)

4

1 に答える 1

0

代わりに機能する可能性のあるものを次に示します。編集中にテーブルビューがセルをインデントするのを防ぎます: UITableView の shouldIndentWhileEditing プロパティを NO に設定します。デリゲート メソッドの tableView:editingStyleForRowAtIndexPath: メソッドを実装します。

- (BOOL)tableView:(UITableView *)tableView shouldIndentWhileEditingRowAtIndexPath:(NSIndexPath *)indexPath {
    return NO;
}

または、セルを作成するときにこれを行うことができます。

cell.shouldIndentWhileEditing = NO;

うまくいけば、これはあなたのために働く.

于 2012-06-26T15:44:27.350 に答える