1

グループ化されたテーブルビューがあります。各セクションには 3 つの行があります。一度に 1 つのセクションを削除できる必要があります。標準の編集モードを使用して、機能させることができます。ただし、削除アイコンは、各セクションの最初の行だけでなく、各セルの左側に表示されます。

最初の行を除くすべての行の小さなスピナー アイコンを抑制する方法はありますか?

サブクラス化せずにこれを行う簡単な方法があることを願っています。

これを視覚化するためのスクリーンショットを次に示します: http://picasaweb.google.com/lh/photo/ll-EJY5ACw7oqHH1xKBQ8w?feat=directlink

4

2 に答える 2

1

これを試して:

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath {
    if(indexPath.row == 0) {
        return UITableViewCellEditingStyleDelete;
    } else {
        return UITableViewCellEditingStyleNone;
    }
}
于 2010-05-12T23:18:33.920 に答える
0

行を削除する代わりに、サブビューとしてとカスタムUIViewを含む親を作成します。この親ビューをセクションヘッダービューとして設定します。UILabelUIButton

ボタンは、たとえば、BOOLそのセクションの状態フラグを反転してからテーブルをリロードすることによって行を削除するメソッドをトリガーするように配線する必要があります。

- (void) deleteMySection:(id)sender {
    self.showMySection = NO;
    [tableView reloadData];
}

したがって、デリゲート-numberOfSectionsInTableView:メソッドは、このブールフラグの状態に応じて出力を調整します。

- (NSInteger) numberOfSectionsInTableView:(UITableView *)tv {
    return ((showMySection) ? numberOfSections : numberOfSections - 1);
}
于 2010-05-12T21:39:06.833 に答える