当我将 UILabel 与顶部对齐时,我的选项是 superview,但它始终使用导航栏作为参考点。当我隐藏导航栏并且约束调整为不再有导航栏并且导致标签被拉得更高的事实时,这会导致问题,这是我不希望发生的不幸反应(我希望它留在原地)。
是否可以只说我的 UILabel 应该总是,比如说,距离全屏视图顶部 100pt?
当我将 UILabel 与顶部对齐时,我的选项是 superview,但它始终使用导航栏作为参考点。当我隐藏导航栏并且约束调整为不再有导航栏并且导致标签被拉得更高的事实时,这会导致问题,这是我不希望发生的不幸反应(我希望它留在原地)。
是否可以只说我的 UILabel 应该总是,比如说,距离全屏视图顶部 100pt?
我不确定 Interface Builder,但您可以在代码中轻松完成此操作,例如:
[self.view addConstraints:[NSLayoutConstraint
constraintsWithVisualFormat:@"V:|-100-[label]"
options:0
metrics:nil
views:@{@"label" : self.label}]];
更新:以前我假设标签是主视图的子视图。如果不是,那么您可以使用以下约束:
[self.view addConstraint:[NSLayoutConstraint
constraintWithItem:self.label
attribute:NSLayoutAttributeTop
relatedBy:NSLayoutRelationEqual
toItem:self.view
attribute:NSLayoutAttributeTop
multiplier:1.0
constant:100]];
我已经对其进行了测试,并且工作正常。