私はしばらくの間、フッタービューを非表示にするために取り組んできました。私の問題は、ボタンをクリックするとフッターにボタンがあり、最後のセクションとして1つのセクションが下に追加され、ボタンも新しく作成されたセクションに移動するため、テーブルの前のセクションのフッターを非表示にしますセクションの更新後。
footerView.hidden = YES
これをボタンアクションで使用しましたが、機能しません。
私はしばらくの間、フッタービューを非表示にするために取り組んできました。私の問題は、ボタンをクリックするとフッターにボタンがあり、最後のセクションとして1つのセクションが下に追加され、ボタンも新しく作成されたセクションに移動するため、テーブルの前のセクションのフッターを非表示にしますセクションの更新後。
footerView.hidden = YES
これをボタンアクションで使用しましたが、機能しません。
4つの解決策があります。彼らです、
解決策 1:
tableView.sectionHeaderHeight = 0.0;
tableView.sectionFooterHeight = 0.0;
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger )section {
return 1.0;
}
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger )section {
return 1.0;
}
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger )section {
return [[UIView alloc] initWithFrame:CGRectZero];
}
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger )section {
return [[UIView alloc] initWithFrame:CGRectZero];
}
解決策 2:
サイズタブの下のインターフェイスビルダーを介して、フッター/ヘッダーの高さを設定できます。
解決策 3:
contentInsetプロパティを設定します。
self.tableView.contentInset = UIEdgeInsetsMake(-20, 0, -20, 0);
上下をエッジに接触させるために使用されます。
解決策 4:
以下を実装し、条件に応じて値を設定します。0.0 は受け付けません。下限値は 1.0 にする必要があります。
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger )section {
if(section == 0) {
return 6;
} else {
return 1.0;
}
}
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger )section {
return 5.0;
}
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger )section {
return [[UIView alloc] initWithFrame:CGRectMake(0, 0, 0, 0)];
}
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger )section {
return [[UIView alloc] initWithFrame:CGRectMake(0, 0, 0, 0)];
}
これでできるはず
tableView.tableFooterView.hidden = YES;
これはデリゲートメソッドを実装することで実現できます
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
return CGFLOAT_MIN;
}
Swift4で:
self.tableView.tableFooterView = nil
Swift 5 ソリューション: (セクション フッターを非表示にします。テーブル フッターを取り除くために別の部分が必要になる場合があります)
func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
return 0.0
}
func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
return UIView()
}