2011-09-06 11 views

risposta

74

È necessario aggiungere un UITapGestureRecognizer alla vista che si desidera toccare.

Ti piace questa:

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTapGesture:)]; 
    tapGesture.numberOfTapsRequired = 2; 
    [self.view addGestureRecognizer:tapGesture]; 
    [tapGesture release]; 
} 

- (void)handleTapGesture:(UITapGestureRecognizer *)sender { 
    if (sender.state == UIGestureRecognizerStateRecognized) { 
     // handling code 
    } 
} 
+5

in caso di presenza di più riconoscimenti di gesti, è possibile garantire il doppio tocco di "alta priorità" utilizzando: [self.view.tapGestureRecognizer requireGestureRecognizerToFail: self.doubleTapGestureRecognizer]; –

+2

non dimenticare di aggiungere all'interfaccia privata della classe ... @interfaccia IBMYourClassName()

8

Aggiungere un UITapGestureRecognizer alla vista, con numberOfTapsRequired = 2.

+0

è UITapGestureRecognizer un controllo? Non è nei controlli Libreria – Azhar

+0

È una sottoclasse UIGestureRecognizer. Devi scriverlo in codice. –

+0

Scrivo questo codice con selettore e UIAlert ma non funziona - (void) viewDidLoad { UITapGestureRecognizer * tapGesture = [[UITapGestureRecognizer alloc] initWithTarget: self action: @selector (handleTapGesture :)]; tapGesture.numberOfTapsRequired = 2; \t [tapGesture release]; \t } – Azhar

Problemi correlati