如何通过 Swift 检查键盘输入的特殊字符“#”,如 hashtag
How to check keyboard input special character "#" like hashtag by Swift
我想在我的 UITextView 中做标签,我检查文本是否包含“#”。
如果用户输入“#”,我会显示关键字列表让用户点击。
然后用户输入第二个hastag像“#yummy #”,我也显示关键字列表。
如何检查用户输入“#”,并触发显示关键字列表。
谢谢
图片如下图。
Swift 4.0
要对 # 个字符执行操作,您可以使用委托方法来检测用户是否输入 # 个字符,如下所示
1) 将代表分配给 UITextView
textView.delegate = self
2) 实现以下委托方法。
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
if text == "#" {
//Perform here some task when user enters # character
}
return true
}
您应该使用协议 UITextViewDelegate
,以及该协议中的函数 textView(_:shouldChangeTextIn range: NSRange, replacementText text: String)
。
参数replacementString
为您提供了当前输入的字符串,您可以测试该字符串是否与所需的字符串相等并进行相应处理。更多详情请阅读Apple docs.
我想在我的 UITextView 中做标签,我检查文本是否包含“#”。
如果用户输入“#”,我会显示关键字列表让用户点击。
然后用户输入第二个hastag像“#yummy #”,我也显示关键字列表。
如何检查用户输入“#”,并触发显示关键字列表。
谢谢
图片如下图。
Swift 4.0
要对 # 个字符执行操作,您可以使用委托方法来检测用户是否输入 # 个字符,如下所示
1) 将代表分配给 UITextView
textView.delegate = self
2) 实现以下委托方法。
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
if text == "#" {
//Perform here some task when user enters # character
}
return true
}
您应该使用协议 UITextViewDelegate
,以及该协议中的函数 textView(_:shouldChangeTextIn range: NSRange, replacementText text: String)
。
参数replacementString
为您提供了当前输入的字符串,您可以测试该字符串是否与所需的字符串相等并进行相应处理。更多详情请阅读Apple docs.