我有一个非常奇怪的问题。 UITableView中所选单元格的分隔线未在iOS 7中显示。如下图所示:
所以我使用了以下代码:
-(void)tableView:(UITableView *)tableView didHighlightRowAtIndexPath:(NSIndexPath *)indexPath {
// fix for separators bug in iOS 7
tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;
}
-(void)tableView:(UITableView *)tableView didUnhighlightRowAtIndexPath:(NSIndexPath *)indexPath {
// fix for separators bug in iOS 7
tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;
}
当我在iOS7上使用xCode 5时,它解决了问题。
但是当我更新到xCode 5.1并在iOS 7.1上编译我的应用程序时,问题又出现了,这次没有任何技巧。 我用过:
cell.clipsToBounds = YES;
2. [tableView reloadRowsAtIndexPaths:indexPath withRowAnimation:UITableViewRowAnimationNone];
删除了我以前的代码。
尝试了几种分隔符样式。
和其他一些技巧。不幸的是,这次他们都没有工作。
会有什么问题?我该如何解决?
答案 0 :(得分:1)
我最后输入了以下代码行:
[tableView setSeparatorStyle:UITableViewCellSeparatorStyleNone];
UIView * lineAfterCell = [[UIView alloc] initWithFrame:CGRectMake(0, cell.frame.size.height + 1, self.view.frame.size.width, .5)];
[lineAfterCell setBackgroundColor:[UIColor lightGrayColor]];
[cell addSubview:lineAfterCell];
它完美无缺。