在iOS 6中,如果您將文本輸入到安全文本字段中,請更改爲其他文本字段,然後返回到安全文本字段並點擊退格鍵,將刪除所有字符。我很好,但是,我試圖啓用/禁用基於該安全文本字段是否有字符的按鈕。我知道如何確定字段中的字符,並且如果退格被擊中,但我無法確定如何檢測是否清除所有字符。iOS 6 UITextField Secure - 如何檢測退格清除所有字符?
這是我用來獲取字段的新文本的委託方法,但是,我似乎無法弄清楚如何獲取新文本(假設新文本只是一個空白字符串)如果退格命令清除所有字符。
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
//returns the "new text" of the field
NSString * text = [textField.text stringByReplacingCharactersInRange:range withString:string];
}
任何幫助,非常感謝。
謝謝!
如果通過參數「replacementString:」傳入的「字符串」是一個長度爲零的空字符串,而「range.length」大於零,那麼我會說你的「一切都是被清除「的情況。 –
只是打退格和刪除一個字符將導致字符串參數爲空,長度爲零,所以這將無法正常工作。 – crizzwald
範圍返回,就好像它是單個後退空間一樣,因此也不起作用。我不確定你的意思是[self length] – crizzwald