我还以为直接 sizeToFit()就能直接计算了呢。。。
1
dcty 2015-01-09 13:54:55 +08:00
行数0,宽度设置一下,sizeToFit应该还能继续用的。
但是,但是,都swift了,为啥不直接al |
2
l12ab 2015-01-09 18:47:37 +08:00
```
var textContent = UILabel() textContent.text = "1234569abcdefghjklmn" textContent.font = UIFont.systemFontOfSize(16) textContent.numberOfLines = 0 textContent.frame = CGRect(x:15, y:10, width:self.view.bounds.size.width-30, height:100) textContent.sizeToFit() ``` |
5
kofwang 2015-01-09 23:03:49 +08:00 via iPhone
auto layout
|
6
krafttuc 2015-01-12 16:18:36 +08:00
值得注意的是 `sizeToFit()` 这个方法会直接更改 label 的尺寸。楼主如果只想知道数值,可以用 sizeThatFits,再做定夺。此外,`NSString` 的某个 category 是有类似 sizeXXX 之类的方法的,把字体等参数传进去可以拿到一个估算的尺寸。
我猜楼主是把 UILabel 放到 UITableViewCell 里后想动态更改 cell 高度?那种场景下 Auto-Layout 或许不会太方便。其他时候 Auto-Layout 可以省去很多力气。 |