я работаю над кривой ежевики 8300
Я добавил некоторые компоненты на главный экран, теперь я хочу перемещать фокус по вертикали, когда трекбол движется вверх или вниз, и перемещать фокус по горизонтали, когда трек-колесо движется влево или вправо.
==================================================================================
--Title area that contains a focusable field(BACK)--
--Non focusable Label field that indicates the name of the user--
--A horizontal field manager1 that contains 4 buttons--
--A horizontal field manager2 that contains 4 buttons--
--A horizontal field manager2 that contains 4 buttons--
==================================================================================
теперь предположим, что в настоящее время фокус находится на кнопке BACK, и я прокручиваю колесо прокрутки вниз, тогда фокус должен перейти на 1-ю кнопку manager1. Опять же, когда я прокручиваю вниз, тогда фокус должен приходить на 1-ю кнопку manager2, а не на 2-ю кнопку manager1 ( как это происходит на устройстве)
мой код :::
protected boolean trackwheelRoll(int amount, int status, int time)
{
focusIndex = this.getFieldWithFocusIndex();
System.out.println("focus index ::::::::::::::::"+focusIndex);
Field f;
if(focusIndex!=0)
{
if(amount==-1)
{
//move up
if(focusIndex>=0)
{
focusIndex = focusIndex-1;
f = getField(focusIndex);
f.setFocus();
}
}
if(amount==1)
{
//moving down
if(focusIndex<=3)
{
f = getField(++focusIndex);
f.setFocus();
}
}
}
return super.trackwheelRoll(amount, status, time);
}
даже после этого элемент управления на симуляторе резко перемещается, но на устройстве никаких изменений не произошло