[英]UITextField resignFirstResponder not working?
我已經仔細檢查了nib文件中的所有連接。 我的代碼-
// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
self.view.backgroundColor = [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"iphone_bg_login.png"]];
self.title = @"Login screen";
loginTxt = [[UITextField alloc] init];
pwdText = [[UITextField alloc] init];
loginFailedTxt = [[UILabel alloc] init];
loginBtn = [[UIButton alloc] init];
navAppDelegate = (NavAppDelegate *)[[UIApplication sharedApplication] delegate];
navAppDelegate.navController.navigationBarHidden = YES;
//NSArray *subVs = (NSArray *) [self.view subviews];
[super viewDidLoad];
}
我使用了UIView (UIControl)
的子類,並在“界面UIControl's touchDown
向其中添加了所有UI元素UIControl's touchDown
方法連接到backgroundTap
方法。
-(IBAction) backgroundTap:(id) sender {
[loginTxt resignFirstResponder];
[pwdText resignFirstResponder];
//[[UIApplication sharedApplication] becomeFirstResponder];
//[sender resignFirstResponder];
}
因此,並未像預期的那樣卸下鍵盤。 不知道為什么。
謝謝您的幫助! Teja公司。
DyingCactus指出了您的錯誤。 您正在用完全不同的控件替換該控件的NIB版本,從而丟失了指向NIB中的指針的指針。 當您調用resignFirstResponder
,您是在重復的對象上調用它,而不是在屏幕上實際的對象上調用它。 擺脫對NIB中連接的東西的alloc
和init
調用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.