я работаю над ежевикой 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-й кнопке менеджера1
Опять же, когда я прокручиваю вниз, фокус должен быть на 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);
}
даже после того, как этот элемент управления внезапно перемещается на симуляторе
но на устройстве никаких изменений не произошло