我向UILabel
的{{1}}添加了一堆UITableViewCell
次观看,其中一些可能会重叠。在点击任何标签时,我想触发一些动作。另外,我想将点击标签调到顶部。
在标签上使用UITapGestureRecognizer,我可以找出哪一个被点击并执行操作。但是将轻拍和重叠的标签放在前面是行不通的。这就是我想要的:
contentView
我确实得到了上面的UILabel *foundLabel = ....; // find the label
for (UITableViewCell *acell in theTable.visibleCells) {
UIView *cellContentView = acell.contentView;
if ([cellContentView.subviews containsObject:foundLabel]) {
[cellContentView bringSubviewToFront:foundLabel];
NSLog(@"should bring to front...");
}
}
输出,因此我知道在相应的单元格NSLog
上调用了bringSubviewToFront
。但是子视图布局顺序没有变化。
想法?
答案 0 :(得分:14)
要探索的一件事是在uitablviewcell的图层上进行zposition。
这对我来说成功地放在另一个桌面上:
cell1.layer.zPosition=3 ;//above
cell2.layer.zPosition=2 ;//below
答案 1 :(得分:3)
bringSubviewToFront:
对我不起作用
尝试insertSubview:belowSubview:
,其中后一个子视图是超级视图,例如标签栏,导航栏,表格视图。