如何更改UITableView可扩展单元格的分隔符样式。我正在使用Custom Tableview Class。
答案 0 :(得分:0)
[tableView setSeparatorStyle:UITableViewCellSeparatorStyleSingleLine];
答案 1 :(得分:0)
可能会添加一个UIView作为您自己的分隔符,并设置一个自动调整遮罩以使其保持在底部。
tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
然后在您的自定义UITableViewCell子类
中- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
self.backgroundColor = [UIColor myColour]; // do cell setup in here
UIView *lineView = [[UIView alloc]initWithFrame:CGRectMake(0.0f, self.contentView.bounds.size.height - 1.0f, self.contentView.bounds.size.width, 1.0f)];
lineView.autoresizingMask = UIViewAutoresizingFlexibleTopMargin;
lineView.backgroundColor = [UIColor myOtherColour];
[self.contentView addSubview:lineView];
}
return self;
}
如果你真的想在cellForRowAtIndexPath
中这样做,你可以,但我不推荐它
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier: CellIdentifier];
if (!cell)
{
cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier: CellIdentifier];
cell.backgroundColor = [UIColor myColour]; // do cell setup in here
UIView *lineView = [[UIView alloc]initWithFrame:CGRectMake(0.0f, cell.contentView.bounds.size.height - 1.0f, cell.contentView.bounds.size.width, 1.0f)];
lineView.autoresizingMask = UIViewAutoresizingFlexibleTopMargin;
lineView.backgroundColor = [UIColor myOtherColour];
[cell.contentView addSubview:lineView];
}
// rest of your cell for row code here