我的iPhone应用程序中有一个UILabel。我想在一行中用UILabel显示大句子。这意味着我想减小字体大小并在可见区域显示全文。我不想以多行显示它。有人可以帮我这样做吗?
我的代码是:
textViewLabel = [[UILabel alloc] initWithFrame:CGRectMake(8, 5, 194, 20)];
textViewLabel.text = @"I have an UILabel in my iPhone app. I have want";
textViewLabel.textColor = [UIColor lightGrayColor];
textViewLabel.font = [UIFont fontWithName:@"Helvetica" size:14];
textViewLabel.numberOfLines = 0;
textViewLabel.backgroundColor = [UIColor clearColor];
CGSize maximumLabelsize2 = CGSizeMake(194,20);
CGSize expectedLabelsize2 = [result sizeWithFont:textViewLabel.font constrainedToSize:maximumLabelsize2 lineBreakMode:textViewLabel.lineBreakMode];
CGRect messagesFrame = textViewLabel.frame;
messagesFrame.size.height = expectedLabelsize2.height;
textViewLabel.frame = messagesFrame;
任何人请帮我这样做?提前谢谢。
答案 0 :(得分:3)
从
更改numberOfLines属性textViewLabel.numberOfLines = 0; // 0 means as many lines as needed
到
textViewLabel.numberOfLines = 1;
添加
textViewLabel.adjustsFontSizeToFitWidth = YES;
考虑设置
textViewLabel.minimumFontSize = someValue; // default is 0.0
答案 1 :(得分:1)
试试这个属性:
myLabel.adjustsFontSizeToFitWidth = YES;
答案 2 :(得分:1)
试试这个:
[textViewLabel setAutoresizingMask:UIViewAutoresizingFlexibleWidth];