取决于你的观点。如果您使用 TextField,您应该在 .header 文件中使用 UITextFieldDelegate 作为委托,如下所示。
@interface ExamPageViewController : UIViewController <UITextFieldDelegate>
而且我们可以使用 UITextFieldDelegate 方法。你可以看到;
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[self.questionAnswerTextField resignFirstResponder];
return YES;
}
-(void)textFieldDidBeginEditing:(UITextField *)textField {
if ([textField.text isEqualToString:@"Sorunun cevabını buraya yazınız!"]) {
textField.text = @"";
}
}
- (void)textFieldDidEndEditing:(UITextField *)textField {
if ([textField.text isEqualToString:@""]) {
textField.text = @"Sorunun cevabını buraya yazınız!";
}
}
否则,您应该使用 UITextViewDelegate 作为委托,如下面的代码片段。
@interface ExamPageViewController : UIViewController <UITextViewDelegate>
而且我们可以在 .m 文件中使用这些委托方法
- (BOOL)textViewShouldReturn:(UITextView *)textField {
[self.questionAnswerTextField resignFirstResponder];
return YES;
}
-(void)textViewDidBeginEditing:(UITextView *)textField {
if ([textField.text isEqualToString:@"Sorunun cevabını buraya yazınız!"]) {
textField.text = @"";
}
}
- (void)textViewDidEndEditing:(UITextView *)textField {
if ([textField.text isEqualToString:@""]) {
textField.text = @"Sorunun cevabını buraya yazınız!";
}
}