行の削除ボタンが表示されている場合にのみ、UITableView の SectionIndex バーを非表示にする方法はありますか?
- 行をスワイプ
- 削除ボタンが表示され、sectionIndex が消える
- 行を後ろにスワイプするか、ボタンを押します
- 削除ボタンが消えるか、行が削除され、sectionIndex が再び表示されます
ありがとう
行の削除ボタンが表示されている場合にのみ、UITableView の SectionIndex バーを非表示にする方法はありますか?
ありがとう
1)クラスのデリゲートを含むカスタムセルを作成すると、テーブルビューが含まれます。
2)使用する
- (void)willTransitionToState:(UITableViewCellStateMask)state NS_AVAILABLE_IOS(3_0);
- (void)didTransitionToState:(UITableViewCellStateMask)state NS_AVAILABLE_IOS(3_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;
}