我有一段代码每次发生后端数据库更改时都会执行。基本上我有一个父视图内的标签。标签通过许多状态消息之一进行更新,每条消息在不同的行上由新行(\ n)结尾。每条状态消息只需要在一条线上,而不能超过。sizeToFit运行奇怪
我遇到的问题是,View首次重新加载时,一切正常。但是,当我在屏幕上并且在后台发生更改时,偶尔会有多行显示状态消息。虽然sizeToFit将标签制作得和父视图一样高,但它在宽度方面做得很差。这就是说它会在多行上分解文本,而不是仅仅查看换行符。
我该怎么办?
self.messageLabel.text = message; //lets get the status message.
[self.messageLabel sizeToFit];
[self.messageLabel setNeedsDisplay];
CGRect frame = [self.messageView frame];
frame.size.height = self.messageLabel.bounds.size.height;
self.messageView.frame = frame;
self.messageLabel.center = CGPointMake(CGRectGetMidX(self.messageView.bounds), CGRectGetMidY(self.messageView.bounds)-(self.messageView.cornerRadius/4));
self.messageLabel.backgroundColor = [UIColor orangeColor];
[self.messageView setNeedsDisplay];