質問

I have this code and the method is not called, what can I do? I need a delegate?

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {

    UITouch *touch = [touches anyObject];

    if ([touch view] == self.view)
    {

    }

}
役に立ちましたか?

解決

You are not using this code in your UIView.

This is a delegate of the UIResponder class and UIView inherits itself from UIResponder. Hence this method is called if it is defined in a UIView class and not in the UIViewController.

Moreover, if it being the code in your UIView, you won't need to check the view as it is THAT VIEW. Because if the view takes touches, you are sure that it is the right view :)

他のヒント

Try to add userInteractionEnabled = YES to your UIView.

Or maybe another view is catching the event.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top