我正在寻找如何捕获退格事件的解决方案,大多数堆栈溢出的答案都是Objective-C,但我需要Swift语言.
首先,我为UITextField设置了delegate,并将其设置为self
self.textField.delegate = self;
然后我知道使用shouldChangeCharactersInRange
委托方法来检测是否按下了退格,所有代码都在Objective-C中.我需要在Swift中使用以下方法.
-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
const char * _char = [string cStringUsingEncoding:NSUTF8StringEncoding];
int isBackSpace = strcmp(_char, "\b");
if (isBackSpace == -8) {
// NSLog(@"Backspace was pressed");
}
return YES;
}