0

複数のフィールドとその他のプロパティを持つカスタム UITableViewCell サブクラスを作成しました。UITableViewController でこの新しいセルを使用したため、セルは「スワイプして削除」ジェスチャに反応しません。

デリゲートに何かが欠けているかどうかをテストするために、プレーンな標準の UITableView を xib に追加し、dataSource とデリゲートを接続して、これから通常の UITableViewCell を返し-tableView:cellForRowAtIndexPath:、ジェスチャを再び有効にしました。

ネットで検索したところ、-layoutSubviews機能しない単純な実装が提案されました。

サブクラスに実装する必要があるものはありますか?

4

1 に答える 1

0

Editingインターネット上で何時間も検索しても何も見つからなかった後、私は XIB でが に設定されていることを確認するために丸一日試行錯誤を行いましたMultiple Selection During Editing

これが「スワイプして削除する機能」を無効にすることを知りませんでした。

両方の可能性が必要なため (編集中以外は s2d で、編集中は複数選択)、-toggleEditing:メソッドに次の 2 行を追加しました。

if(![_tableView isEditing]) {
    [_tableView setAllowsMultipleSelectionDuringEditing:YES];    // <----
    [_tableView setAllowdSelectionDuringEditing:YES];            // <----
    [_tableView setEditing:YES animated:YES];
}
else {
    [_tableView setAllowsMultipleSelectionDuringEditing:NO];     // <----
    [_tableView setAllowdSelectionDuringEditing:NO];             // <----
    [_tableView setEditing:NO animated:YES];
}
于 2013-07-01T15:17:14.747 に答える