Pergunta

Quero receber um retorno de chamada quando meu UIPinchGestureRecognizer terminar um gesto de pinça.Além disso, seria ótimo saber se o gesto finalizado foi aumentar ou diminuir o zoom.

Alguém sabe um método para usar?Ou a abordagem a fazer?

Obrigado!

Foi útil?

Solução

Outra abordagem, em vez de substituir touchesEnded:, é que você pode simplesmente verificar o estado do reconhecedor de gestos no método do manipulador de destino.

  -(void)handlePinchGesture:(UIGestureRecognizer*)gestureRecognizer {    
    if(UIGestureRecognizerStateEnded == [gestureRecognizer state]){
      // do something
    }
  }

Outras dicas

Você pode saber se foi um zoom dentro ou fora pela propriedade Scale do UipinchgestureCognizer.

Basta aprovar o toque: método para obter um retorno de chamada (e a chamada algum outro método se desejar).

A melhor abordagem que não requer subclasse é examinar a propriedade "estado" na instância reconhecida no gesto em seu manipulador de ação.O estado mudará durante todas as fases do ciclo de vida do gesto.A mudança de estado que você está procurando é UigesturerEecognizerstate.Também é uma boa prática verificar para o UigesturerEcognizerStateCancelled também.

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