本文為您介紹UITableView的分割線長短的控制的相關介紹,具體代碼請看下文
UITableView的默認的cell的分割線左邊沒有頂滿,而右邊卻頂滿了。這樣顯示很難看。我需要讓其左右兩邊都是未頂滿狀態,距離是20像素
// code1 if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) { [self.tableView setSeparatorInset:UIEdgeInsetsMake(0, 20, 0, 20)]; } // code2 if ([self.tableView respondsToSelector:@selector(setLayoutMargins:)]) { [self.tableView setLayoutMargins:UIEdgeInsetsMake(0, 20, 0, 20)]; }
添加UITableView的一個代理方法:
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath { if ([cell respondsToSelector:@selector(setSeparatorInset:)]) { [cell setSeparatorInset:UIEdgeInsetsMake(0, 15, 0, 15)]; } if ([cell respondsToSelector:@selector(setLayoutMargins:)]) { [cell setLayoutMargins:UIEdgeInsetsMake(0, 15, 0, 15)]; } }
ode1處代碼:定制cell分割線的frame
code2處代碼:-layoutMargins returns a set of insets from the edge of the view’s bounds that denote a default spacing for laying out content.If preservesSuperviewLayoutMargins is YES, margins cascade down the view tree, adjusting for geometry offsets, so that setting the left value of layoutMargins on a superview will affect the left value of layoutMargins for subviews positioned close to the left edge of their superview’s boundsIf your view subclass uses layoutMargins in its layout or draWing, override -layoutMarginsDidChange in order to refresh your view if the margins change.
[db:作者簡介][db:原文翻譯及解析]【UITableView的分割線長短的控制】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!