[英]Dismissing the First Responder/Keyboard with multiple Textfields
在經歷了這些之后,就像認真...
...我有多個TextFields
和一些TextViews
。 有沒有辦法為所有文本字段設置批次或組 Dismiss First Responder? 我需要為每個字段制作方法嗎? 也許我忽略了該鏈接中的某些內容?
也許我可以遵循這樣的事情:
后者有意義嗎? 提前致謝。
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- =-
我想到了....
Controller.h
@interface Controller : UIViewController <UITextFieldDelegate> {
IBOutlet UITextField *clickedDone;
}
@property (nonatomic, retain) IBOutlet UITextField *clickedDone;
Controller.m
#import "Controller.h"
@implementation Controller
@synthesize clickedDone;
- (void)viewDidLoad
{
[super viewDidLoad];
[clickedDone setDelegate:self];
}
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
return YES;
}
該視圖有一個endEditing:
可以使用的方法。 文檔說
導致視圖(或其嵌入的文本字段之一)放棄第一響應者狀態。
在您看來 controller 您可以致電:
[[self view] endEditing:YES];
clickedDone.returnKeyType = UIReturnKeyDone; // in viewDidLoad
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
return YES;
}
現在很容易。 您可以根據用例采用不同的方法。 就我而言,我在 UITableViewController 中有多個文本字段。 我所做的是這樣的:
- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[self.view endEditing:YES];
}
最佳答案是:
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
return YES;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.