我有一个从 .xib 文件加载的自定义 UITableViewCell。在 .xib 的 .m 中,我正在加载一些额外的 UI 元素(例如图像视图),我将这些元素添加到 contentView 中:
[self.contentView addSubview:myImageView];
但是,当我选择行时,.selectedBackgroundView 出现在 myImageView 下,而不是整个单元格的顶部。
我该怎么做才能让 selectedBackgroundView 重新回到顶部,或者确保我的 UI 元素的顺序正确完成?
以下是我在 init 中加载 .xib 的方式供参考:
cellLoader = [UINib nibWithNibName:@"MasterTableViewCell" bundle:[NSBundle mainBundle]];
在 cellForRowAtIndexPath 中:
MasterTableViewCell *cell = (MasterTableViewCell *)[tableView dequeueReusableCellWithIdentifier:@"MasterTableViewCell"];
if (cell == nil) {
NSArray *topLevelItems = [cellLoader instantiateWithOwner:self options:nil];
cell = [topLevelItems objectAtIndex:0];
UIView *v = [[UIView alloc] init];
v.backgroundColor = [UIColor blackColor];
cell.selectedBackgroundView = v;
}
return cell;
谢谢大家