Ответ 1
Вы установили делегирование экземпляра UITextField в текущий контроллер вида следующим образом:
textField.delegate = self;
(self означает экземпляр, где callback textFieldDidBeginEditing переопределяется)
Я использую -(void)textFieldDidBeginEditing:(UITextField *)sender
эту функцию в своем приложении. это не вызывается, когда я выбираю текстовое поле.
здесь код...
-(void)textFieldDidBeginEditing:(UITextField *)sender{
if([sender isEqual:txtName])//txtName is the IBOutlet of the UITextField
{
NSLog(@"Name");
}
else{
NSLog(@"NO_Name");
}
}
Вы установили делегирование экземпляра UITextField в текущий контроллер вида следующим образом:
textField.delegate = self;
(self означает экземпляр, где callback textFieldDidBeginEditing переопределяется)
Обязательно выполните 2 простых шага
1 - выполнить делегат UITextFieldDelegate
@interface yourViewController : UIViewController <UITextFieldDelegate>
2 - Установите делегат
yourTextField.delegate = self
Если у вас много текстовых полей в вашем представлении, вы можете установить делегат для всех текстовых полей, таких как
for (id subView in self.view.subviews)
{
if ([subView isKindOfClass:[UITextField class]]) {
[subView setDelegate:self];
}
}
Вы должны включить UITextFieldDelegate в файл .h
@interface yourViewController : UIViewController <UITextFieldDelegate>
Вы должны включить UITextFieldDelegate в свой .h файл, а также добавить YourTextField.delegate = self