我想自动调整 UITextView 的大小,类似于 sms-app 或 whatsapp。我只找到了 objective-c 的解决方案,示例项目的代码太多了。我在 Swift 中需要这个。
问:当用户输入带有换行符的消息时,如何根据字体大小调整 UITextView 的大小?
请您参考如下方法:
您可以使用 UITextViewDelegate 来做到这一点。我不知道如何使用 AutoLayout 实现这一点。
func textViewDidChange(textView: UITextView)
{
var fixedWidth : CGFloat = textView.frame.size.width
var newSize : CGSize = textView.sizeThatFits(CGSizeMake(fixedWidth, CGFloat(MAXFLOAT)))
var newFrame : CGRect = textView.frame
newFrame.size = CGSizeMake(CGFloat(fmaxf((Float)(newSize.width), (Float)(fixedWidth))),newSize.height)
textView.frame = newFrame
}
