【发布时间】:2013-08-01 01:49:51
【问题描述】:
这与此处的所有其他“如何将UILabel 中的文本居中”问题略有不同...
我有一个UILabel,其中包含一些文字,我想将UILabel 中的文字垂直居中。有什么大不了的,对吧?这是默认设置。问题来了,因为我的文本是动态的,并且我打开了自动收缩功能。随着文本变大,字体大小会缩小。你会得到这种行为。
请注意字体基线没有移动,我希望它移动以便数字在UILabel's 框架中垂直居中。
很简单,对吧?我只记得框架的原始中心在viewDidLoad
self.workoutTimeCenter = _workoutTimeLabel.center;
然后我在更改文本后致电sizeToFit,对吗?
[_workoutTimeLabel sizeToFit];
_workoutTimeLabel.center = _workoutTimeCenter;
嗯,sizeToFit 做了,我猜,正是它应该做的,调整框架的大小,使文本适合而不缩小!
如何在遵守基线和自动收缩的同时将 UILabel 中的文本垂直居中? (注意,iOS5 及更高版本的解决方案很好,我什至可以处理 iOS6 及更高版本的解决方案。)
【问题讨论】:
-
您以编程方式或在 xib 文件上创建标签。
-
我已经在xib中建立了标签
-
如何将您的 UILabel 嵌入到更大的 UIView 中,然后使用 label.center = FatherView.center 将 UILabel 居中在 UIView simpy 中; ?
-
我没有遵循,基线仍然不会居中。
-
@PaulCezanne 你能解释一下吗?你的要求是像我的回答一样吗?我对基线和字体大小感到困惑。