بلاك بيري العاصفة المحاكي - الأحداث التي تعمل باللغة لا تطلق النار، كيف تحصل على انتقاد للعمل؟

StackOverflow https://stackoverflow.com/questions/1173044

سؤال

تم لعبها مع محاكي العاصفة و 4.7 JDE، من أجل حياة لي لا أستطيع معرفة كيفية إطفاء أحداث الإيماءات في المحاكي.

فيما يلي رمز الحدث المس باللمس لنظام RIM Sample App EmbeddedMapDemo. يبدو بشكل مباشر بما فيه الكفاية، ولكن Touchgesture.getEvent () == Touchgesture.Swipe لا يبدو أبدا للتسجيل في True.

كيف يمكنني تسجيل الضربات في المحاكي؟ مع الماوس، أحاول إجراء النقر الأيسر واسحب ولكن هذا لا يبدو يعمل.

/**
* @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;       
}
هل كانت مفيدة؟

المحلول

يحاكي الضغط على زر الماوس الأيسر النقر فوق الشاشة ... محاكي (وأيضا جهاز العاصفة الفعلي، وأعتقد أن) لن يطلق أحداث Touchgesture أثناء النقر فوق أسفل على الشاشة.

ما تريد القيام به هو الاستمرار زر الماوس الايمن واسحب، نظرا لأن زر الماوس الأيمن يحاكي شاشة صنبور، دون النقر. وبهذه الطريقة، يجب أن تكون قادرا على الحصول على ما تفعله.

من الصعب بعض الشيء أن تفعل لفتة على المحاكاة، عليك أن تتحرك كيندا بسرعة، ولكن إذا كنت تستخدم زر الماوس الأيمن، فيجب أن تكون قادرا على القيام بذلك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top