尝试从安全的textField文本中删除字符时遇到问题。
我想在textFieldShouldChangeCharactersInRange
委托方法中捕获文本,但问题是对于安全的textFields存在问题。
当我点击安全的textField并从textField的文本中删除字符时,视觉上所有的textField文本都会消失(默认情况下这是安全文本字段)。
问题是textFiledShouldChangeCharactersInRange
中返回的文本不是空文本,而是没有删除字符的文本。所以问题是视觉上文本字段中没有文本,但上面提到的委托方法返回的文本不是nil或空。
我想问一下是否有可能捕获正确的文字。
如果不清楚,请询问,我会回复。
非常感谢!
答案 0 :(得分:0)
试试这个
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool
{
if let swRange = textField.text!.rangeFromNSRange(range)
{
let newString = textField.text!.stringByReplacingCharactersInRange(swRange,withString:string) //...
print(newString)
}
return true
}
方法rangeFromNSRange(range)
可以在NSRange to Range<String.Index>
我希望这有助于你