Commit a293c182 authored by David黄金龙's avatar David黄金龙

赴港计划书 添加输入提示

parent 51c6d726
...@@ -41,6 +41,9 @@ class YHHKPlanItemView: UIView { ...@@ -41,6 +41,9 @@ class YHHKPlanItemView: UIView {
view.textColor = UIColor.mainTextColor view.textColor = UIColor.mainTextColor
view.font = UIFont.PFSC_R(ofSize: 14) view.font = UIFont.PFSC_R(ofSize: 14)
view.backgroundColor = .clear view.backgroundColor = .clear
view.contentInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)
// view.backgroundColor = .red
return view return view
}() }()
...@@ -67,7 +70,20 @@ class YHHKPlanItemView: UIView { ...@@ -67,7 +70,20 @@ class YHHKPlanItemView: UIView {
updateUI() updateUI()
} }
} }
let holdView : UIView = UIView() let holdView : UIView = UIView()
//提示文字
var tipsTxt : String = "请输入,300字内"
var maxNumbler : Int = 300
//提示lable
private lazy var tipsLable : UILabel = {
let lable = UILabel(text: tipsTxt)
lable.textColor = UIColor.yhGreyColor //#94A3B8
lable.font = UIFont.PFSC_R(ofSize: 14)
return lable
}()
} }
private extension YHHKPlanItemView { private extension YHHKPlanItemView {
...@@ -145,6 +161,14 @@ private extension YHHKPlanItemView { ...@@ -145,6 +161,14 @@ private extension YHHKPlanItemView {
} }
myTextView.delegate = self myTextView.delegate = self
// myTextView.wrapToContent() // myTextView.wrapToContent()
subHoldView.addSubview(tipsLable)
tipsLable.snp.makeConstraints { make in
make.top.equalTo(myTextView.snp.top).offset(8)
make.left.equalTo(myTextView.snp.left).offset(4)
make.height.equalTo(17)
}
} }
@objc func tapButton(gestureRecognizer:UITapGestureRecognizer) { @objc func tapButton(gestureRecognizer:UITapGestureRecognizer) {
...@@ -184,12 +208,15 @@ private extension YHHKPlanItemView { ...@@ -184,12 +208,15 @@ private extension YHHKPlanItemView {
myTextView.wrapToContent() myTextView.wrapToContent()
} }
var number = 100
if model.type == .planOther { if model.type == .planOther {
number = 500 maxNumbler = 500
tipsTxt = "请输入,500字内"
tipsLable.text = tipsTxt
} }
numberLabel.text = myTextView.text.count.string + "/\(number)"
if myTextView.text.count > number { numberLabel.text = myTextView.text.count.string + "/\(maxNumbler)"
if myTextView.text.count > maxNumbler {
numberLabel.textColor = .failColor numberLabel.textColor = .failColor
} else { } else {
numberLabel.textColor = UIColor.placeHolderColor numberLabel.textColor = UIColor.placeHolderColor
...@@ -200,35 +227,60 @@ private extension YHHKPlanItemView { ...@@ -200,35 +227,60 @@ private extension YHHKPlanItemView {
} else { } else {
line.isHidden = false line.isHidden = false
} }
if model.content.count > 0 {
tipsLable.isHidden = true
} else {
if model.canEditFlag {
tipsLable.isHidden = false
} else {
tipsLable.isHidden = true
}
}
} }
} }
extension YHHKPlanItemView : UITextViewDelegate { extension YHHKPlanItemView : UITextViewDelegate {
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool { func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
if text.isEmpty { if text.isEmpty {
return true return true
} }
let newLength = (textView.text as NSString).length + text.count - range.length let newLength = (textView.text as NSString).length + text.count - range.length
if dataMode?.type == .planOther { if dataMode?.type == .planOther {
return newLength <= 500 return newLength <= maxNumbler
} }
return newLength <= 100 return newLength <= maxNumbler
} }
func textViewDidChange(_ textView: UITextView) { func textViewDidChange(_ textView: UITextView) {
guard let model = dataMode else { return } guard let model = dataMode else { return }
guard let text = textView.text else { return } guard let text = textView.text else { return }
model.content = text model.content = text
var number = 100 // var number = 300
if model.type == .planOther { // if model.type == .planOther {
number = 500 // number = maxNumbler
} // }
numberLabel.text = myTextView.text.count.string + "/\(number)" numberLabel.text = myTextView.text.count.string + "/\(maxNumbler)"
if myTextView.text.count > number { if myTextView.text.count > maxNumbler {
numberLabel.textColor = .failColor numberLabel.textColor = .failColor
} else { } else {
numberLabel.textColor = UIColor.placeHolderColor numberLabel.textColor = UIColor.placeHolderColor
} }
if text.count > 0 {
tipsLable.isHidden = true
} else {
if model.canEditFlag {
tipsLable.isHidden = false
} else {
tipsLable.isHidden = true
}
}
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment