ios - UITextView 文本开箱即用

标签 ios swift ios8 uitextfield ios-autolayout

我正在开发一款聊天应用。消息框会根据文本的长度调整大小,但换行时文本会超出框。

Print's

我尝试在 textViewDidChange 方法中添加 textView.contentInset = UIEdgeInsetsZero,但它仍然不起作用。

函数:

func textViewDidChange(textView: UITextView) {

    let minSize = CGFloat(50)
    let maxSize = UIScreen.mainScreen().bounds.height - 50 - keyboardHeight
    let expectedSize = textView.contentSize.height + 9

    var newSize = expectedSize < minSize ? minSize : expectedSize
    newSize = newSize > maxSize ? maxSize : newSize

    acessoryViewH.constant = newSize

    textView.contentInset = UIEdgeInsetsZero
}

自动布局约束:

Constraint's

最佳答案

尝试添加 textView.layer.masksToBounds = true

关于ios - UITextView 文本开箱即用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39173305/

相关文章:

objective-c - 如何在 iOS 灰度中切换,而不是蓝色?

ios - 快速,如何为 tabBarController 设置初始 View

uiimageview - 在 Interface Builder 中暴露圆角半径我做错了什么?

ios - 如何向自定义 UIButton 添加点击操作?

ios - 无法将 viewController 对象转换为 Swift 中的 viewController 类型

ios - 将按钮的目标方法设置为另一个类的函数

ios - 在 iOS 8 中更改 UISearchBar 取消按钮文本

objective-c - iOS8 - 约束含糊地暗示高度为零

ios - 在 UIImage 上绘制另一个图像 -

ios - 在 XCTest (UITesting) 中获取设备名称