我有一个TableViewController,动态单元格包含3个标签,里面有一个imageView。我在故事板中创建了它。它看起来像这样......
- Label1
oImg - Label2
- Label3
并且,Label2垂直居中于imageView(称之为约束-A);其他标签也与Label2对齐。
我想要做的是,在TableViewController的cellForRowAtIndexPath
中,检查Label3是否为空,将Label2向下移动,Label1保持约束设置(所以也向下移动)。
作为第一个选项,我尝试将约束-A连接到TableViewController,但由于它是TableViewCell,我无法将约束出口连接到TableViewController。
然后,我尝试手动向下移动它们,但奇怪的是它只影响一行(第一行没有Label3),而cellForRowAtIndexPath
的其余部分工作正常..
cell.Label2.frame.origin.y += 5
cell.Label1.frame.origin.y += 5
实现这一目标的适当方法是什么? (所以我可以控制约束-A或手动移动Label2,然后跟随Label1)
答案 0 :(得分:1)
//set above image 2
cell.constLbl.constant = -(cell.lbl3.frame.size.height / 2 - 10); // this obj below img 1
cell.constLbl3Top.constant = cell.lbl3.frame.size.height / 2; // this obj below img 2
答案 1 :(得分:0)
为label1和label2的y-cord约束创建IBOutlet属性,然后更改"您的属性名称" .constraint ="某些值"而不是改变框架y线。