Pergunta

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)
    {

    }

}
Foi útil?

Solução

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 :)

Outras dicas

Try to add userInteractionEnabled = YES to your UIView.

Or maybe another view is catching the event.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top