我在故事板中定义了一个标签,我正在尝试以编程方式更改其位置。 SO 上已有一些问题似乎可以解决此问题,但似乎没有一个解决方案有效(即标签不移动)。我已经删除了标签上所有现有的限制,但无济于事。我试过了:
class LandingViewController: UIViewController {
@IBOutlet weak var titleLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
titleLabel.frame = CGRectMake(100, 25, titleLabel.frame.size.width, titleLabel.frame.size.height)
}
我也尝试过
titleLabel.center = CGPointMake(120, 150)
代替titleLabel.frame
我错过了什么吗?
使用 AutoLayout 时,在具有约束的情节提要中实例化的视图具有其translatesAutoresizingMaskIntoConstraints
属性设置为false
,与以编程方式实例化的视图相反。这是因为界面构建器期望约束来完全指定该视图的布局。
要手动修改框架/边界/中心,请将此属性设置为true
在代码中。这将使视图的布局行为类似于 AutoLayout 之前的工作方式,因此请注意,如果您在视图上指定此属性,则在视图上指定的任何约束可能会发生冲突或行为异常。actually希望使用约束来布局它。
我建议您首先考虑您真正想要做的是否是通过自动布局约束指定标签的位置。如今,您很少真正想要像上面那样手动指定位置。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)