ios - 更改界面方向后 UILabel 的文本未居中

标签 ios objective-c autolayout ios9

旋转设备后,标签文本出现奇怪的现象,它没有按应有的方式居中。容器 View 基本上有 11 个 subview (单元格)。单元格 subview (图像和标签)约束是:

1)标签

enter image description here

2)图片

enter image description here

添加到容器 View 时应用的单元格约束是:

  • 单元格 1

    1) 匹配上、左、右边框(superview)

    2) 高度等于或大于 15。

  • 单元格 2-10

    1)匹配左右边框( super View )

    2)固定到上一个单元格的底部

    3) 匹配前一个单元格的高度

  • 单元 11

    1) 匹配左、右、下边框(superview)

    2)固定到上一个单元格的底部

    3) 匹配前一个单元格的高度

结果如下

  • 肖像

enter image description here

  • 风景

enter image description here

这对我来说似乎是一个错误,但不确定。欢迎提出任何建议。

最佳答案

我会将标签放在它自己的 UIView 对象中,然后使用水平居中/垂直居中约束来确保标签在 View 中居中。

将标签的父 View 的顶部和底部固定到彩色图像的顶部和底部,并给它一个与图像等宽的约束。在它们之间和它的边缘周围添加间距,这应该可以实现您正在寻找的东西!

关于ios - 更改界面方向后 UILabel 的文本未居中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36756433/

相关文章:

ios - 将附近的对象渲染在其他对象之上时,OpenGL 会变慢

objective-c - 使一系列按钮的响应都不同

cocoa - 使用自动布局扩展 NSTextView

ios - 使用 UIStackView 将标签放置在 UISlider 上方

ios - 如何在 Storyboard 中显示按钮的边框

iphone - 将 CGPDFPageRef 转换为整数

ios - 如果 TextField 为空,则设置自定义文本

ios - 以编程方式创建的 rootviewcontroller 不显示分配的 viewcontroller 的内容

ios - 如何设置NSTimer的计数限制?

ios - 此解码器只会解码采用 NSSecureCoding 的类