Я ищу решения о том, как захватить событие backspace, большинство ответов на переполнение стека находятся в Objective-C, но мне нужно на языке Swift.
Сначала я установил делегат для UITextField и установил его в 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;
}