Eu tenho alguns rótulos que quero ajustar sua altura ao texto, este é o código que escrevi para isso agora
func heightForView(text:String, font:UIFont, width:CGFloat) -> CGFloat{
let label:UILabel = UILabel(frame: CGRectMake(0, 0, width, CGFloat.max))
label.numberOfLines = 0
label.lineBreakMode = NSLineBreakMode.ByWordWrapping
label.font = font
label.text = text
label.sizeToFit()
return label.frame.height
}
EDITAR:
O problema não estava neste pedaço de código, então minha correção está na própria questão. Ainda pode ser útil para outras pessoas!
sizeWithFont
pode não estar disponível para Swift, String
mas está disponível em NSString
Você ainda deve ser capaz de chamá-lo assim.