Я використовую shouldChangeCharactersInRange як спосіб використання пошуку на льоту.
Однак у мене проблема, shouldChangeCharactersInRange викликається до того, як текстове поле насправді оновиться:
У цілі C я вирішив це, використовуючи нижче:
-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSString * searchStr = [textField.text stringByReplacingCharactersInRange:range withString:string];
return YES;
}
Однак я спробував написати це в Swift:
func textField(textField: UITextField!, shouldChangeCharactersInRange range: NSRange, replacementString string: String!) -> Bool {
let txtAfterUpdate:NSString = self.projectSearchTxtFld.text as NSString
txtAfterUpdate.stringByReplacingCharactersInRange(range, withString: string)
self.callMyMethod(txtAfterUpdate)
return true
}
Метод все ще викликається до того, як я отримаю значення?