對于ios7,ios8及以上來說,調整UITableView的cell的分割線位置已經是相當不便,因為UITableView內部使用了margin layout.
其實只需要如下這樣子就可以實現分割線的控制。
//按照作者最后的意思還要加上下面這一段,才能做到底部線控制位置,所以這里按stackflow上的做法添加上吧。
if([cell respondsToSelector:@selector(setPreservesSuperviewLayoutMargins:)]){
[cell setPreservesSuperviewLayoutMargins:NO];
}
}
如果要直接使用TableView的sectionTitle,但又想設置它的字體,顏色什么的,可以使用如下方法。
// 另一種方法設置背景顏色
// header.contentView.backgroundColor = [UIColor blackColor];
}
不顯示分割線
通過tableFooterView修改UITableView分割線:
在使用UITableView的時候,如果沒有數據/數據很少,會發現即使沒有數據的cell也會有分割線,這樣看起來并不美觀,通常我們希望只有顯示數據的cell會顯示對應的分割線,而不顯示數據的cell不顯示分割線。
常用的做法有兩種:
第一種做法是首先取消顯示分割線,然后自定義cell,在cell的最底部加上一個高度為1的view,這樣看起來就像是一條分割線。只有cell有數據顯示出來的時候才會顯示這個view,這樣就達到了目的。
第二種做法既不用取消顯示分割線,也不需要自定義cell,而是直接這樣做:
新聞熱點
疑難解答