我有一个标签,名为ratingstext,我希望它的内容适合于一行文本,方法是在多行的情况下调整高度。如何在iOS目标-C中实现这一目标。
我的标签:
如您所见,标签显示200/20,名为ratingstext标签。实际上值是200/200,但由于我使用了
self.ratingsText.textContainer.maximumNumberOfLines = 1;
由于标签宽度固定,最后0值将被截断。如何自动调整宽度或高度以适应单行内容?
我的代码是:
self.ratingsText = [[UITextView alloc]initWithFrame:self.frame];
self.ratingsText.editable = NO;
self.ratingsText.text = @"000/00";
self.ratingsText.textContainer.maximumNumberOfLines = 1;
self.ratingsText.font = [UIFont systemFontOfSize:self.ratingSize weight: UIFontWeightRegular];
[self.ratingsText sizeToFit];
self.ratingsText.backgroundColor = UIColor.clearColor;
[self addSubview:self.ratingsText];
发布于 2018-06-08 09:49:35
如果您正在使用故事板,autoLayout将展开框架以匹配文本输入的大小。在“属性检查器”中,将宽度textLabel“关系”设置为“小于或等于”。我在故事板200/20中给出了文本标签,并在代码中将其设置为200/200。汽车布局负责其余的工作。
发布于 2018-06-08 08:48:54
使用以下属性:
adjustsFontSizeToFitWidth
contentScaleFactor
minimumFontSize
https://stackoverflow.com/questions/50764518
复制