2011-09-09 21 views
14

Tengo una UIView dentro de UIScrollView. Cuando quiero simular el evento de arrastre en UIView, se activa el evento deslizar en UIScrollView.ios simulador: simular arrastrar y arrastrar

Según el documentation, no hay mucha diferencia entre deslizar y arrastrar.
Flagelo

1- Place the pointer at the start position. 
2- Hold the mouse button. 
3- Move the pointer in the swipe direction and release the mouse button. 


Arrastre

1- Place the pointer at the start position. 
2- Hold down the mouse button. 
3- Move the pointer in the drag direction. 

en un iPad puedo usar dos dedos dos con banda magnética y un dedo para arrastrar. Ahora, ¿cómo hago algo similar en el simulador? arrastre en lugar de deslizar?

Editar 1: Debería haber estado más claro primero. De todos modos, mi problema es que la función de arrastrar el mouse está activando el deslizamiento en lugar de arrastrar, desplazando así la vista de desplazamiento en lugar de pasar el evento de arrastre al UIView contenido en la vista de desplazamiento. Estoy en macbook pro. El deslizamiento de dos dedos en el panel táctil se ignora. Tocar y arrastrar está causando lo mismo que arrastrar el mouse. Gracias

+0

posible mediante el uso de macbook touchpad/magic trackpad? –

+0

@Marek Touchpad no es de mucha ayuda. Se ignora el deslizamiento de dos dedos, no pasa nada. Mantener y arrastrar está causando el mismo efecto que el arrastre del mouse. He actualizado la pregunta. – Srisa

+0

Hmm hay algún tipo de problema con los gestos y scrollView, ya que recibe eventos primero ... Si realmente quieres hacer esto, creo que debes anular el hitTest: withEvent: y verificar qué vista tiene el evento y pasarlo al –

Respuesta

1

Terminé deshabilitando el desplazamiento desde la interfaz de usuario y agregué dos botones para desplazar la vista de desplazamiento. Como esto solo funciona para el emulador, he usado #ifndef para ocultar los botones mientras construyo para el dispositivo.

18

Consulte Jeff LaMarche's quick note sobre cómo hacerlo. Está documentado en la misma página que estás leyendo, pero la explicación de Jeff es más clara.

Si desea simular un gesto de dos dedos en el simulador de iPhone, mantenga presionada la tecla de opción. Obtendrá dos puntos en la pantalla en lugar de uno. Los dos puntos adoptarán pellizcos de manera predeterminada: si acercas el punto al centro de la pantalla, el otro punto se dirige hacia el centro, lo que facilita la simulación de una pizca o un pellizco.

Si desea hacer un gesto diferente de dos dedos, aleje los dos puntos de la distancia que desea que sean, luego mantenga presionada la tecla Mayús mientras mantiene presionada la tecla de opción. Eso bloqueará la posición de las dos prensas de dedo para que pueda hacer, por ejemplo, un deslizamiento de dos dedos.

+0

@ Rob Mi problema es que el mouse-drag está disparando el deslizamiento (gesto de dos dedos). No puedo disparar el evento de arrastre (gesto de un dedo). Actualizó la pregunta. – Srisa

2

ver esta documentación a continuación: iOS Simulator User Guide

sólo tiene que utilizar el ratón para arrastrar la vista, alias, haga clic izquierdo de la vista a continuación, mueva el ratón