Frage

Werde mit dem Sturm-Emulator und dem 4,7 JDE, für das Leben von mir spielen kann ich nicht herausfinden, wie Gestenereignisse im Emulator zu feuern.

Im Folgenden finden Sie der Berührungsereigniscode für die RIM-Beispielanwendung EmbeddedMapDemo. Es scheint einfach genug, aber touchGesture.getEvent () == TouchGesture.SWIPE scheint nie wahr zu registrieren.

Wie kann ich mich registrieren klaut im Emulator? Mit meiner Maus versuche ich die linke Maustaste und ziehen Sie zu tun, aber das scheint nicht zu funktionieren.

/**
* @see Field#touchEvent(TouchEvent)
*/
protected boolean touchEvent(TouchEvent message)
{        
    boolean isConsumed = false;

    if(_mapField.isClicked())
    {
        TouchGesture touchGesture = message.getGesture(); 
        if (touchGesture != null)
        {                
            // If the user has performed a swipe gesture we will 
            // move the map accordingly.
            if (touchGesture.getEvent() == TouchGesture.SWIPE)
            {      
                // Retrieve the swipe magnitude so we know how
                // far to move the map.
                int magnitude = touchGesture.getSwipeMagnitude();

                // Move the map in the direction of the swipe.
                switch(touchGesture.getSwipeDirection())
                {
                    case TouchGesture.SWIPE_NORTH:
                        _mapField.move(0, - magnitude);
                        break;
                    case TouchGesture.SWIPE_SOUTH:
                        _mapField.move(0, magnitude);
                        break;
                    case TouchGesture.SWIPE_EAST:
                        _mapField.move(- magnitude, 0);
                        break;
                    case TouchGesture.SWIPE_WEST:
                        _mapField.move(magnitude, 0);
                        break;                            
                } 
                // We've consumed the touch event.
                isConsumed = true; 
            }
        }     
    }
    return isConsumed;       
}
War es hilfreich?

Lösung

Durch Drücken der linken Maustaste simuliert den Bildschirm klicken auf ... den Simulator (und auch eine tatsächliche Sturm Gerät, glaube ich) nicht TouchGesture Ereignisse ausgelöst, während Sie auf dem Bildschirm sind, klicken Sie nach unten.

Was möchten Sie tun ist halten Sie die rechte Maustaste und ziehen, da die rechte Maustaste einen Bildschirm tippen simuliert, ohne Klick. Auf diese Weise sollten Sie in der Lage sein TouchGestures zu bekommen zu schießen.

Es ist ein wenig schwer, eine Geste auf dem Simulator zu tun, Sie ein bisschen schnell bewegen müssen, aber wenn Sie die rechte Maustaste verwenden, sollten Sie in der Lage sein, es zu tun.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top