我有一个UIViewController,它包含一个UIScrollView,它的内容视图中有一个UIView。
我有以下代码不起作用,键盘没有被解雇,为什么?:
#pragma mark -
#pragma mark Touch Events
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
if ([touch view] == scrollView || [touch view] == self.view)
{
[usernameTextField resignFirstResponder];
[passwordTextField resignFirstResponder];
}
}
答案 0 :(得分:1)
touchesBegan:withEvent:
是UIView
方法,而不是UIViewController
方法。你想在这里实现什么?您应该很少对touchesBegan:
做出UI反应。您可能希望改为使用UITapGestureRecognizer
。
确保使用访问者(self.scrollView
)而不是直接访问您的ivars。直接ivar访问是导致内存管理崩溃的首要原因。