2012-04-17 38 views
0

我正在與2和第一個觸摸屏和其他非觸摸工作的TouchEvent()和FieldChange()在黑莓

我已經設計,其具有10個custombuttons加入到VerticalFieldManager 的CustomButtonField類一個屏幕延伸Field類

我已經使用2種方法fieldChange()和的TouchEvent()用於觸摸屏的 問題是每當我做的按鈕,點擊它被正確激活的TouchEvent() 但隨後fieldChange()方法也立即調用之後

我該怎麼辦? 有什麼問題?

+0

我對這個概念很熟悉,但我認爲onTouchEvent()將在其術語中工作良好,但是當焦點從點擊按鈕中移出時,它會自動生成一個事件,即FieldChange()。這正是我想要發生的事情。 – Harpreet 2012-04-17 10:43:47

回答

0

查看Paul SylliboyArhimed提供的問題BlackBerry touchEvent outside Field triggers fieldChanged的問題的答案。

在這些答案,有僅更新一個boolean變量,以確定觸摸事件發生的方法,以及基於關於fieldChangednavigationClick方法執行的動作的那boolean的值。

BB UI框架調用navigationClick(int status, int time) 自動若存在 protected boolean touchEvent(TouchEvent message)執行後的任何觸摸事件。並且 navigationClick(int status, int time)調用方法 fieldChangeNotify(0)這導致fieldChange()(在問題中) 或public void fieldChanged(Field field, int context)被調用。