if
([cell
respondstoselector
:@selector
(setseparatorinset:)])
if([cell
respondstoselector
:@selector
(setpreservessuperviewlayoutmargins:)])
if([cell
respondstoselector
:@selector
(setlayoutmargins:)])
需要注意的是preservessuperviewlayoutmargins
和layoutmargins
是ios8以後才有的,separatorinset
是ios7以後才有的,如果要相容以前的版本記得先判斷selector
是否存在。
至於原因如下:
大致的意思是說ios7只有separatorinset
的概念,在ios7下tableview
的分割線左邊有15畫素的間距。
ios8中還有layoutmargins
,用來表示子view和父view的間距,有8畫素的間距。preservessuperviewlayoutmargins
預設為true
表示開啟子view與父view的間距。
cell讓分割線左對齊
在ios8之後,uitableview的分割線距離左邊會有一段距離 我們這裡就讓這段距離消失。首先在ios7裡面讓分割線左對齊只要一句 就好了 self.tableview setseparatorinset uiedgeinsetszero 但是在ios8之後這樣只能縮排1 2左右,還是不能完全左...
iOS開發系列 cell分割線置頂
廢話不多說,直接上 tableviewcell分割線左側置頂 1 void viewdidlayoutsubviews if tableview respondstoselector selector setlayoutmargins tableviewcell分割線左側置頂 2 void tabl...
listview的分割線
listview中每個item項之間都有分割線,設定android footerdividersenabled表示是否顯示分割線,此屬性預設為true。1.不顯示分割線只要在listview控制項中新增android footerdividersenabled false 即可。html view ...