我有一个UITableView配置为'UITableViewStylePlain',其UITableViewCellSeparatorStyleSingleLine用于其分隔符样式.细胞具有背景颜色.
问题是当您滚动桌面视图时,一旦某些单元格从屏幕上消失并被带回,分隔符将不再可见.
单元格注册为:
[tableView registerNib:nib forCellReuseIdentifier:cellIdentifier];
Run Code Online (Sandbox Code Playgroud)
细胞代码:
- (void)customizeMyTable
{
[self.tableView setDataSource:self];
[self.tableView setDelegate:self];
self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;
NSString *cellIdentifier = [MyTableViewCell cellIdentifier];
UINib *nib = [UINib nibWithNibName:cellIdentifier bundle:nil];
[self.tableView registerNib:nib forCellReuseIdentifier:cellIdentifier];
self.tableView.rowHeight = 50;
}
- (UITableViewCell *)tableView:(UITableView *)aTableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
MyTableViewCell *cell = (MyTableViewCell*)[tableView dequeueReusableCellWithIdentifier:cellID];
[cell configure:someDataForThisRow];
return cell;
}
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
cell.backgroundColor = [UIColor lightGrayColor];
}
Run Code Online (Sandbox Code Playgroud)
有人遇到这个问题吗?这似乎只发生在iOS 5上,而不是iOS 6 Tableviews上.
Ján*_*nos 12
如果您在自定义单元格中实现了layoutSubviews,并且您不小心忘记调用相应的超级方法,则不会看到分隔线.
也许你应该检查一下你是否忘记用其他方法打电话给super.
- (void)layoutSubviews
{
[super layoutSubviews]; //<-THIS LINE YOU NEED
//own code continues here
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3937 次 |
| 最近记录: |