我得到的CGSize
高度比标签字体长。
我想删除文本和UILabel边缘之间的顶部/左侧/右侧/底部填充,以便UILabel框架恰好适合其包含的文本。
这是我正在使用的代码。
NSString *ad=@"hello";
NSDictionary *fontAttributes = @{NSFontAttributeName : [UIFont systemFontOfSize:50]};
CGSize textSize = [ad sizeWithAttributes:fontAttributes];
bc =[[UILabel alloc]initWithFrame:CGRectMake(20, 25, textSize.width, textSize.height)];
bc.font= [UIFont systemFontOfSize:50];
bc.text=ad;
bc.layer.borderColor = [UIColor blackColor].CGColor;
bc.layer.borderWidth = 1.0;
[self.tap addSubview:bc];
最佳答案
您不必获取CGSize
textSize即可分配您的UILabel
。
在标签中使用自动版式:
在xib中添加标签的顶部,前导,尾随约束。
将numberOfLines
属性设置为0
在VC中设置preferredMaxLayout
宽度(如果您的开发目标设置任何您想要的文本。
关于ios - 根据UILabel字体大小调整CGSize,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32478828/