自分のデザインのいくつかのカスタムUITableViewCellをサポートする編集可能なUITableViewを作成しました。ユーザーが新しいレコードを作成したり、既存のレコードを変更したりするときはいつでも、このUITableViewを使用します。グループ化されたスタイルのテーブルビューを使用して、テーブルビューをtableViewCellsのグループに分割しました。
ユーザーがレコードを編集しているときに、セクション1を表示したくありません。これを実現するために、numberOfRowsInSectionメソッドが呼び出されたときに0を返します。すべて問題なく動作しますが、セクション0とセクション2の間に「わずかな視覚的なギャップ」があり、可能であれば排除したいと思います。indexPathsを動的に処理するためにテーブルビューコントローラを再コーディングすることは避けたいです。私のindexPath(セクションと行)の多くはハードコーディングされています。
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
printf("CustomEntryViewController, -tableView:numberOfRowsInSection:\n");
if (tableView == self.customEntryTableView) {
if (section == 0)
return 1;
else if (section == 1) {
if ([self.entryMode isEqualToString:@"ADD"])
return 2;
else if ([self.entryMode isEqualToString:@"EDIT"])
return 0;
}
else if (section == 2)
return 1;
else if (section == 3)
return 1;
else if (section == 4 && self.uisegQuantityAnswer.selectedSegmentIndex == 0)
return 1;
}
return 0;
}
前もって感謝します。