Ios UITableView每个行分隔符上不需要的白线
我一直在为tableview使用以下代码Ios UITableView每个行分隔符上不需要的白线,ios,objective-c,ipad,uitableview,ios7.1,Ios,Objective C,Ipad,Uitableview,Ios7.1,我一直在为tableview使用以下代码 _comboBoxTableView = [[UITableView alloc] initWithFrame:CGRectMake(1, _selectContentLabel.frame.origin.y+_selectContentLabel.frame.size.height-1, frame.size.width+1, 48) style:UITableViewStylePlain]; _comboBoxTableView.layer.bor
_comboBoxTableView = [[UITableView alloc] initWithFrame:CGRectMake(1, _selectContentLabel.frame.origin.y+_selectContentLabel.frame.size.height-1, frame.size.width+1, 48) style:UITableViewStylePlain];
_comboBoxTableView.layer.borderColor=[UIColor colorWithRed:226.0/255.0 green:226.0/255.0 blue:226.0/255.0 alpha:1].CGColor;
_comboBoxTableView.layer.cornerRadius = 10;
_comboBoxTableView.layer.borderWidth = 1.0f;
_comboBoxTableView.separatorColor = [UIColor colorWithRed:166.0/255.0 green:166.0/255.0 blue:166.0/255.0 alpha:1];
[_comboBoxTableView setSeparatorStyle:UITableViewCellSeparatorStyleSingleLine];
每个分隔符的左侧都有一个不需要的白色,如下所示
是虫子吗?我用ios7.1运行它。有什么解决办法吗?这不是一个bug。从iOS 7开始,表视图能够调整其分隔符的插入。如果需要边到边分隔符,请删除插入:
if ([_comboBoxTableView respondsToSelector:@selector(separatorInset)]) { // In case running iOS < 7
_comboBoxTableView.separatorInset = UIEdgeInsetsZero;
}
if([\u comboBoxTableView respondsToSelector:@selector(separatorInset)]){//如果运行iOS<7
_comboBoxTableView.separatorInset=UIEdgeInSetZero;
}
更多信息请参见。如果您没有时间通过编程解决此问题,您可以在while行中添加子视图补丁
我知道这不是正确的解决方案,但很有效。对我有效的方法:在Interface Builder中,tableview有一个叫做分隔符插入的东西。它通常是默认值(看起来是15) 您可以将其切换为“自定义”,并将15替换为0。不再有奇怪的台词了
如果有人需要非零分隔符插入,则这些白线是单元内容视图和分隔符未涵盖的UITableCell。只需在文档大纲中选择UITableCell(而不是内容视图!),并将其设置为与内容视图背景相同的背景色(或任何您想要的颜色)