我在RoundedRectView中有一个UILabelView。 UILabelView应该显示一个动态生成的文本字符串,其中包含新行。
问题在于UILabel仍然将文本显示为“blahblahbla ...”,并且似乎不会在多行显示文本。唯一的例外是当我执行“sizeToFit”函数调用时,此时,文本不再出现在父视图的中心。我的UILabelView行数为0,并且还增加了父视图的框架(RoundedRectView)
我能做些什么来克服这个问题?
这是我的代码:
CGRect frame = [self.messageView frame]; //get the frame size of parent view
self.messageView.frame = CGRectMake(frame.origin.x, frame.origin.y, frame.size.width, (lineHeight * count)); //increase it to fit the text
self.messageLabel.text = message;
[self.messageView setNeedsDisplay];
// [self.messageLabel sizeToFit]; this fixes the multiple line issue but now label is not centered in parent view
答案 0 :(得分:3)
将numberOfLines
设为0,将lineBreakMode
设为UILineBreakModeWordWrap
,将adjustsFontSizeToFitWidth
设为否。检查您的文字是否包含'\ n'。
答案 1 :(得分:1)
[self.messageLabel setNumberOfLines:0];
来源:apple docs