一、预期效果图
二、页面布局
创建一个label添加到bg图上,布局确定label位置
let textView = UITextView()
textView.backgroundColor = ColorThemeShared.EEEEEE
textView.keyboardType = .emailAddress
textView.textColor = ColorThemeShared.lightTextColor
textView.font = UIFont.systemFont(ofSize: 14)
textView.delegate = self
bg.addSubview(textView)
textView.snp.makeConstraints { (make) in
make.edges.equalTo(UIEdgeInsets.init(top: 0, left: 10, bottom: 0, right: 10))
}
//
let countLabel = UILabel()
countLabel.text = "0/100字"
bg.addSubview(countLabel)
countLabel.snp.makeConstraints { (make) in
make.right.equalTo(-15)
make.bottom.equalTo(-10)
}
三、实现UITextFieldDelegate
func textViewDidChange(_ textView: UITextView) {
if textView.text.count > 100 {
if let str = textView.text {
//截取前100个字符
let subStr = str.prefix(100)
}
}
countLabel.text = String.init(format: "%ld/100字", textView.text.count)
}