所以我正在尝试使用如下所示的自定义UITableViewCell:
我正在尝试将详细信息标签保持对齐,并将标题标签上的内容设置得更高。
所以我面临的挑战是我希望Title Cell上第二列的左边缘与整个视图的中心对齐。
有办法吗?
答案 0 :(得分:6)
尝试使用几个分组视图,每列一个。将每个列视图的外边缘固定到单元格内容视图的边缘,然后向列视图添加等宽度约束。
准备好包含列视图后,可以在每个视图中布置标签。
答案 1 :(得分:2)
添加等宽度约束,向左视图添加前导空间约束,向右添加尾随空格,以及它们之间的水平间距。
答案 2 :(得分:1)
当然,您可以将它们放在UIView中,并且视图左边缘将等于CenterX,因此它们将在中间对齐。或者您可以将顶部标题单元格与CenterX对齐,并使每个标题的前沿与此匹配。您可以通过多种方式实现您的要求。
NSLayoutContraint *constraint = [NSLayoutConstraint constraintWithItem:label attribute:NSLayoutAttributeCenterX relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeCenterX multiplier:1.0f constant:0.0f];
[self.view addConstraint:constraint];
NSArray *constraints [NSLayoutConstraint
constraintsWithVisualFormat:@"V:|[label1]-(5)-[label2]-(5)-[label3]|"
options:NSLayoutFormatAlignAllLeading
metrics:nil
views:@{ @"label1" : label1, @"label2" : label2, @"label3" : label3 }];
[self.view addConstraints:constraints];
上面只是如果您希望如何在代码中执行此操作的示例,self.view是一个视图,但如果您想要UITableViewCell的内容视图,您可以将其切换为。
答案 3 :(得分:0)
我无法得到上述建议,所以我采取了另一种方式。
简单。