我的视图中有一些UILabel,其高度设置为sizeWithFont:
。
我将autoreszingMask设置为灵活的宽度和高度,但是在旋转时宽度会发生变化(假设因为self.view的宽度发生变化,而且其设置的宽度相对于self.view)但是它的高度不会改变为再次适合内容。这会在顶部和底部产生较大的空白区域。
只是想知道如何在旋转时重新调整UILabel的大小?有没有自动执行此操作的方法,或者是否有办法在设备旋转时获取所有UILabel并重新执行sizeWithFont
?
UILabels是UIView heirarchies的子视图,用作UITableView中各节的标题。
由于 汤姆
答案 0 :(得分:1)
你应该把sizeToFit
发送给任何UIView,尤其是UILabel,而不是强迫它们使用任意大小。
最好的方法通常是首先设置最大宽度和当前高度,然后发送sizeToFit
,然后在必要时再次调整宽度。对于多行标签,它看起来是避免布局错误的最简单方法。
答案 1 :(得分:0)
问题是在略微偏移的uilabel上有一个灵活的左右边距。
如果标签不居中,则需要选择左侧或右侧,并为其中一个设置灵活边距。