我正在将文本数据从 xml 加载到我今天的小部件标签,所以高度不能是静态的。由于字体大小为 17px,我计算出一行中最多有 30 个字符,因此我尝试像这样设置高度
int number_of_characters = [self.string length];
[label sizeToFit];
self.preferredContentSize = CGSizeMake(self.view.frame.size.width, (number_of_characters/30)*22+40);
我将 +40 添加到高度,因为我在小部件顶部有静态文本,并且由于字体大小为 17px,所以乘以 22 我假设两行之间有 5px 间距。
但这不起作用,我不知道为什么:(。还有其他方法可以使小部件高度动态化吗?