![](/img/trans.png)
[英]swift long non editable text in textview (i can't see text from the beginning)
[英]How to keep some text non editable and some editable in textview swift?
我有一个 textview 我想保留一些文本不可编辑和其他文本可编辑。 例如。 我的 textview 有文字“我的名字是:Sandesh Sardar”。 所以我的名字应该是不可编辑的,其他文本应该是可编辑的。 在 Swift 5 中有什么方法可以做到这一点吗?
这可能使用文本范围。 意味着如果我有大的不可编辑的文本? 如果我有多个这样的textview,还有什么更好的方法吗?
或者我们如何在 textview 的某个范围之后停止编辑?
使用这段代码来获得你的结果。 这意味着textView
在编辑时不会返回true
,如果现有文本是My name is:
。 例如,如果您想在用户输入大约 30 个字符后停止,请在内部进行检查,如下所示。
extension ViewController: UITextViewDelegate {
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
if let textViewText = textView.text {
if textViewText == "My name is:" && text == "" {
return false
}
//For text range
if let textRange = Range(range, in: textViewText) {
let updatedText = textViewText.replacingCharacters(in: textRange,
with: text)
return updatedText.count < 30 + 11 //11 characters for *My name is:*
}
}
return true
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.