这是我想要的效果:
如您所见,我希望两个文本字段彼此间隔相等,并在堆栈视图中对齐中心.
这个堆栈视图将包含我需要排列的1-7个文本字段.
以下是目前的情况:
这就是我设置文本字段的方式
let textLabel = UILabel()textLabel.backgroundcolor = UIcolor.redtextLabel.wIDthAnchor.constraint(equalToConstant: 40.0).isActive = truetextLabel.heightAnchor.constraint(equalToConstant: 20.0).isActive = truetextLabel.text = "Hi"textLabel.textAlignment = .centerlet textLabel1 = UILabel()textLabel1.backgroundcolor = UIcolor.redtextLabel1.wIDthAnchor.constraint(equalToConstant: 40.0).isActive = truetextLabel1.heightAnchor.constraint(equalToConstant: 20.0).isActive = truetextLabel1.text = "Hi"textLabel1.textAlignment = .center
我正在生成堆栈视图,如下所示:
//Stack VIEwlet stackVIEw = UIStackVIEw()stackVIEw.axis = UILayoutConstraintAxis.horizontalstackVIEw.distribution = UIStackVIEwdistribution.equalCenteringstackVIEw.alignment = UIStackVIEwAlignment.fillstackVIEw.spacing = 16.0stackVIEw.addArrangedSubvIEw(textLabel)stackVIEw.addArrangedSubvIEw(textLabel1)stackVIEw.translatesautoresizingMaskIntoConstraints = false;self.vIEw.addSubvIEw(stackVIEw)//ConstraintsstackVIEw.leftAnchor.constraint(equalTo: self.vIEw.leftAnchor,constant: 50).isActive = truestackVIEw.rightAnchor.constraint(equalTo: self.vIEw.rightAnchor,constant: -50).isActive = truestackVIEw.topAnchor.constraint(equalTo: self.vIEw.topAnchor,constant: 100).isActive = true
如何将元素放入对齐中心?
我以为是的
UIStackVIEwdistribution.equalCentering
然而,这并没有做太多.
感谢你的时间:)
解决方法 多数民众赞成.通常情况下,具有中心对齐和相等居中分布的水平UIStackVIEw应该完全相同:但也许我不理解你是对的,你真的想要这样的东西:
在这种情况下,您必须选择Fill Equally作为分配方法,并使标签本身居中于其文本:
总结以上是内存溢出为你收集整理的Swift UIStackView:以编程方式从中心定位元素.全部内容,希望文章能够帮你解决Swift UIStackView:以编程方式从中心定位元素.所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)