1

行の削除ボタンが表示されている場合にのみ、UITableView の SectionIndex バーを非表示にする方法はありますか?

  1. 行をスワイプ
  2. 削除ボタンが表示され、sectionIndex が消える
  3. 行を後ろにスワイプするか、ボタンを押します
  4. 削除ボタンが消えるか、行が削除され、sectionIndex が再び表示されます

ありがとう

4

2 に答える 2

0

1)クラスのデリゲートを含むカスタムセルを作成すると、テーブルビューが含まれます。

2)使用する

- (void)willTransitionToState:(UITableViewCellStateMask)state NS_AVAILABLE_IOS(3_0);
- (void)didTransitionToState:(UITableViewCellStateMask)state NS_AVAILABLE_IOS(3_0); 

ステータスを変更するために委任するメッセージを送信します。

于 2013-08-08T13:36:57.837 に答える
0

次の UITableViewDelegate メソッドをオーバーライドする必要があります。これは私にとってうまくいきました:

-(void)tableView:(UITableView *)tableView willBeginEditingRowAtIndexPath:(NSIndexPath *)indexPath{
    headerHeight = 0.0f;
    NSInteger sectionCount = self.theTableView.numberOfSections;
    NSRange range = NSMakeRange(0, sectionCount);
    [self.theTableView reloadSections:[NSIndexSet indexSetWithIndexesInRange:range] withRowAnimation:UITableViewRowAnimationAutomatic];
}

-(void)tableView:(UITableView *)tableView didEndEditingRowAtIndexPath:(NSIndexPath *)indexPath{
    headerHeight = 30.0f;
    NSInteger sectionCount = self.theTableView.numberOfSections;
    NSRange range = NSMakeRange(0, sectionCount);
    [self.theTableView reloadSections:[NSIndexSet indexSetWithIndexesInRange:range] withRowAnimation:UITableViewRowAnimationAutomatic];
}

-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
    return headerHeight;
}
于 2013-08-08T14:49:14.863 に答える