teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

over again

2017/06/28 05:30

投稿

fuzzball
fuzzball

スコア16733

answer CHANGED
@@ -1,1 +1,29 @@
1
- セクション自体は表示せず、各セクションの先頭セル(row=0)だけに日付を表示すればいいのではないでしょうか?
1
+ セクション自体は表示せず、各セクションの先頭セル(row=0)だけに日付を表示すればいいのではないでしょうか?
2
+
3
+ # やり直し
4
+
5
+ セクション自体の高さは0(には出来ないので1とか)にして、そこからはみ出すように表示したいViewをぶら下げます。
6
+
7
+ すごく雑ですが、こんな感じ。
8
+
9
+ ```swift
10
+ func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
11
+ let view = UIView()
12
+ view.backgroundColor = .orange
13
+ let label = UILabel()
14
+ label.font = UIFont.systemFont(ofSize: 50)
15
+ label.text = String(section)
16
+ label.sizeToFit()
17
+ view.addSubview(label)
18
+ return view
19
+ }
20
+
21
+ func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
22
+ return 1
23
+ }
24
+ ```
25
+
26
+ 分かりやすいように、セクションの高さを1にしてオレンジのラインにしています。
27
+ 全く表示させたくないなら`.clear`にすればいいでしょう。(高さ0だとセクションが表示されません)
28
+
29
+ 細かいところを気にしだすとダメかも知れませんが。