1,关于分割线
(1),去除多余分割线
[self setExtraCellLineHidden:self.msgTabView]; //去掉多余分割线
-(void)setExtraCellLineHidden: (UITableView *)tableView
{
UIView *view = [UIView new];
view.backgroundColor = [UIColor clearColor];
[tableView setTableFooterView:view];
}
(2),设置分割线长度
[cell setSeparatorInset:UIEdgeInsetsMake(0, 30, 0, 0)];//分割线设置 上 左 下 右
(3),设置分割线为全屏宽度
-(void)viewDidLayoutSubviews
{
if ([_systemSettingOption respondsToSelector:@selector(setSeparatorInset:)]) {
[_systemSettingOption setSeparatorInset:UIEdgeInsetsMake(0,0,0,0)];
}
if ([_systemSettingOption respondsToSelector:@selector(setLayoutMargins:)]) {
[_systemSettingOption setLayoutMargins:UIEdgeInsetsMake(0,0,0,0)];
}
}
-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
if ([cell respondsToSelector:@selector(setSeparatorInset:)]) {
[cell setSeparatorInset:UIEdgeInsetsZero];
}
if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {
[cell setLayoutMargins:UIEdgeInsetsZero];
}
}
2,cell文字位置调整
继承UITableview重写layoutSubView
- (void) layoutSubviews
{
[super layoutSubviews];
int cellHeight = self.frame.size.height;
int cellWidth = self.frame.size.width;
self.textLabel.frame = CGRectMake(30, 0, cellWidth-100, cellHeight);
self.detailTextLabel.frame = CGRectMake(cellWidth-80, 0, 70, cellHeight);
}
//图标位置设置
UIImage *_image = [UIImage imageNamed:@"icon-unread-green"];
cell.imageView.frame = CGRectMake(0, 0, 10, 10);
//cell.imageView.image = _image;
UIImageView *imageView = [[UIImageView alloc] initWithImage: _image];
[imageView setFrame:CGRectMake(8, 20, 10, 10)];
[cell.contentView addSubview:imageView];