为动态增长的UITextView设置最小高度可以通过以下步骤实现:
下面是一个示例代码:
import UIKit
class ViewController: UIViewController, UITextViewDelegate {
@IBOutlet weak var textView: UITextView!
let minHeight: CGFloat = 100 // 设置最小高度
override func viewDidLoad() {
super.viewDidLoad()
textView.delegate = self
textView.textContainerInset = UIEdgeInsets(top: 8, left: 8, bottom: 8, right: 8) // 设置文本内边距
textView.layer.borderWidth = 1 // 设置边框宽度
textView.layer.borderColor = UIColor.lightGray.cgColor // 设置边框颜色
}
func textViewDidChange(_ textView: UITextView) {
let size = textView.sizeThatFits(CGSize(width: textView.frame.width, height: CGFloat.greatestFiniteMagnitude))
let height = max(size.height, minHeight) // 获取文本内容高度,并与最小高度进行比较
textView.frame.size.height = height // 设置UITextView的高度
}
}
这样,当UITextView的文本内容发生变化时,会根据内容的大小自动调整UITextView的高度,并且保证高度不会小于最小高度。
推荐的腾讯云相关产品:腾讯云移动直播(https://cloud.tencent.com/product/mlvb)可以用于实时音视频直播,适用于在线教育、社交娱乐、游戏直播等场景。
领取专属 10元无门槛券
手把手带您无忧上云