今天開(kāi)發(fā)中需要設(shè)計(jì)這樣的界面 以前都是碰到這種情況都是自定義的,今天不知怎么的,就想嘗試下用系統(tǒng)的,順便再溫習(xí)一下. 在這里就不再細(xì)說(shuō)cell樣式了,網(wǎng)上有好多,這里我就從網(wǎng)上扒一些來(lái)對(duì)今天的問(wèn)題做一下說(shuō)明,可能比較舊.但可以說(shuō)明問(wèn)題. 系統(tǒng)自己的UITableView樣式有兩種: 1.UITableViewStylePlain: Plain樣式的是方形的,充滿你給的view.frame坐標(biāo)。 2.UITableViewStyleGrouped: Grouped樣式主要是以圓角形顯示。跟iphone自帶的通訊錄編輯頁(yè)面類似。 二、系統(tǒng)自己的UITableViewCell樣式有四種: 1.UITableViewCellStyleDefault: Default樣式:左邊一個(gè)顯示圖片的imageView,一個(gè)標(biāo)題textLabel,沒(méi)有detailTextLabel。 2.UITableViewCellStyleSubtitle: Subtitle樣式:左邊一個(gè)顯示圖片的imageView,上邊一個(gè)主標(biāo)題textLabel,一個(gè)副標(biāo)題detailTextLabel。主標(biāo)題字體大且加黑,副標(biāo)題字體小在主標(biāo)題下邊。 3.UITableViewCellStyleValue1: Value1樣式:左邊一個(gè)顯示圖片的imageView,左邊一個(gè)主標(biāo)題textLabel,右邊一個(gè)副標(biāo)題detailTextLabel,主標(biāo)題字體比較黑。 4.UITableViewCellStyleValue2: Value2樣式:左邊一個(gè)主標(biāo)題textLabel字體偏小,挨著右邊一個(gè)副標(biāo)題detailTextLabel,字體大且加黑。 今天我們采取的就是就是默認(rèn)的樣式, 通過(guò)簡(jiǎn)單的設(shè)置,我們初步達(dá)到了我們想到的效果,但有一個(gè)問(wèn)題就是下面的線有問(wèn)題. 通過(guò)查找方法,我們發(fā)現(xiàn) 在ios7中,UITableViewCell左側(cè)會(huì)有默認(rèn)15像素的空白。這時(shí)候,設(shè)置setSeparatorInset:UIEdgeInsetsZero 能將空白去掉。 但是在ios8中,設(shè)置setSeparatorInset:UIEdgeInsetsZero 已經(jīng)不起作用了。下面是解決辦法 首先在viewDidLoad方法加入以下代碼: if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) {[self.tableView setSeparatorInset:UIEdgeInsetsZero]; 然后在UITableView的代理方法中加入以下代碼 - (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath{if ([cell respondsToSelector:@selector(setSeparatorInset:)]) {[cell setSeparatorInset:UIEdgeInsetsZero]; 完美解決 |
|