我正在我的应用程序中进行自动布局。我有一个功能可以通过滑块移动来增加整个应用程序的字体大小。问题是当我增加字体大小时,标签的文本会变成椭圆。
我已经给我的标签一个固定宽度和增加可变高度的约束,但这并不能解决任何问题。
我是否需要提供换行模式(自动换行)并指定每个文本的行数或有任何其他解决方案?
任何帮助将不胜感激。
我正在我的应用程序中进行自动布局。我有一个功能可以通过滑块移动来增加整个应用程序的字体大小。问题是当我增加字体大小时,标签的文本会变成椭圆。
我已经给我的标签一个固定宽度和增加可变高度的约束,但这并不能解决任何问题。
我是否需要提供换行模式(自动换行)并指定每个文本的行数或有任何其他解决方案?
任何帮助将不胜感激。
尝试这个:
首先从上、左、右侧约束标签,然后使标签高度大于或等于但不从下边绑定。
然后使用以下代码动态增加标签高度:
-(float)expectedHeightWithFontSize:(CGFloat)fontSize
{
CGRect lblTextSize = [self.yourLabel.text boundingRectWithSize:CGSizeMake(self.yourLabel.frame.size.width, MAXFLOAT)
options:NSStringDrawingUsesLineFragmentOrigin
attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:fontSize]}
context:nil];
return lblTextSize.size.height;
}
您应该能够设置自动换行并指定大量行,例如30
. 这应该可以解决问题。