iOS中的sizeToFit实现

时间:2013-06-19 15:11:56

标签: ios cocoa-touch uilabel

我是iOS的新开发者。我目前正在开发iOS应用程序,并在iOS中发现了一些异常情况。请帮我理解。

  1. sizeToFit如何工作?我有一个UILabel,其动态长度取决于字符串。当我说setNumberOfLines:0和[UILabel sizeToFit]然后它很好地调整一切。但是,当我立即将sizeToFit消息发送到包含此标签的视图时,它将停止工作。我是用错误的方法接近这个吗?我希望在我的应用中拥有的是根据UILabel的高度调整视图的高度。
  2. 随意了解更多详情。

1 个答案:

答案 0 :(得分:0)

首先获得标签的大小。在标签上应用sizeToFit,然后使用标签的旧尺寸和新尺寸设置视图尺寸。

CGSize labelOldHeight = self.label.bounds.size.height;    
[self.label sizeToFit];
self.view.frame = CGRectMake(self.view.frame.origin.x, self.view.frame.origin.y, self.view.bounds.size.width, self.view.bounds.size.height + self.label.bound.size.height - labelOldHeight);