陷阱退格键

may*_*hai 0 iphone

我是新手iPhone世界我试图捕获退格键,如if(string isEqualto:@"\ b")但它不起作用,退格的ascii代码是8 ..有什么方法可以得到用于backscape键的ascii代码....如果可能,请告诉我代码如何获取字符的ascii值.

Tim*_*Tim 5

不要获取退格的ASCII代码,而是考虑使用委托来捕获所需的行为.我知道UITextFieldDelegate你想做什么:

- (BOOL)                     textField:(UITextField *)textField 
         shouldChangeCharactersInRange:(NSRange)range
                     replacementString:(NSString *)string {

    if([string isEqualToString:@""]) {
        // Some replacement is taking place where the new string is empty
        // This implies a backspace (and not a character replacement)
        // Do your backspace-trapping here
        return NO;
    } else {
        return YES;
    }

}
Run Code Online (Sandbox Code Playgroud)

  • 您检查空字符串而不是查看range.length的任何特殊原因(0表示插入,1表示删除)? (3认同)