Blackberry: событие касания для менеджера переопределяет все остальные поля - PullRequest
0 голосов
/ 17 января 2012

У меня есть следующий код, который использует жесты для прокрутки моего hfm, но переопределение этого hfm, по существу, переопределяет все поля на экране, делая их бесполезными.Как это возможно, я думал, что этот конкретный TouchEvent принадлежит HFM?Как мне обойти это и просто отключить сенсорную прокрутку для hfm?

gallery = new CustomHFM(){



            protected void sublayout(int maxWidth, int maxHeight){
                super.sublayout(maxWidth, 200);
                setExtent(maxWidth,200);
            }


            protected boolean touchEvent(TouchEvent message){

                int eventCode = message.getEvent();

                if(eventCode == TouchEvent.GESTURE){
                    System.out.println("SWIPE GESTURE");
                    TouchGesture g = message.getGesture();
                    int gesturecode = g.getEvent();
                    int direction = g.getSwipeDirection();

                        //gallery.setHorizontalScroll(page_two, true);
                    if(direction == TouchGesture.SWIPE_WEST)
                        slideNext();

                    if(direction == TouchGesture.SWIPE_EAST)
                        slidePrev();

                    pressed = true;
                }

                if(eventCode == TouchEvent.UP){
                pressed = false;

                //slide();
                }


                return true;
            }
        };

1 Ответ

1 голос
/ 17 января 2012

Вы должны возвращать true из touchEvent-метода только тогда, когда менеджер использует событие, и оно не должно распространяться дальше по иерархии.Возможно, вам следует также вызвать super.touchEvent перед обработкой, но я не уверен в этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...