为什么我的UIViewController不响应触摸?

时间:2011-09-11 17:54:04

标签: iphone objective-c cocoa-touch uiviewcontroller uiscrollview

我有一个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];
    }
}

1 个答案:

答案 0 :(得分:1)

touchesBegan:withEvent:UIView方法,而不是UIViewController方法。你想在这里实现什么?您应该很少对touchesBegan:做出UI反应。您可能希望改为使用UITapGestureRecognizer

确保使用访问者(self.scrollView)而不是直接访问您的ivars。直接ivar访问是导致内存管理崩溃的首要原因。