这与此处的所有其他“如何将文本居中UILabel
”问题略有不同...
我有一个UILabel
包含一些文本的文本,我想将文本垂直居中在UILabel
. 有什么大不了的,对吧?这是默认设置。问题来了,因为我的文本是动态的,并且我打开了自动收缩功能。随着文本变大,字体大小会缩小。你得到这种行为。
请注意,字体基线没有移动,我希望它移动,以便数字在UILabel's
框架中垂直居中。
容易,对吧?我只记得框架的原始中心viewDidLoad
self.workoutTimeCenter = _workoutTimeLabel.center;
然后我sizeToFit
在更改文本后打电话,对吗?
[_workoutTimeLabel sizeToFit];
_workoutTimeLabel.center = _workoutTimeCenter;
好吧,sizeToFit
我猜,确实是它应该做的,调整框架的大小,使文本适合而不会缩小!
如何UILabel
在尊重基线和自动收缩的同时垂直居中文本?(注意,iOS5和更高版本的解决方案很好,我什至可以处理iOS6和更高版本的解决方案。)