Я добавил 2 BitmapFields (стрелки влево и вправо) на один HorizontalFieldManager, но когда я нажимаю в любом месте HFM, BitmapFields получает фокус и показывает, что он выбран.
Я хочу нигде не показывать фокус, пока он не нажмет на BitmapFields.
Ниже приведен код для него:
bmfBottomRight = new BitmapField(bmpBottomRightFocused, FOCUSABLE) {
protected boolean navigationClick(int status, int time) {
int fieldIndex = getCurrentFieldIndex();
if (fieldIndex < (surveyList.size() - 1))
updateIncrField(fieldIndex);
return super.navigationClick(status, time);
}
};
bmfBottomLeft.setPadding(5, 0, 5, ((Display.getWidth() - bmfBottomRight.getPreferredWidth()) >> 1) - bmfBottomRight.getPreferredWidth());
Я устанавливаю Padding для него.
navigationClick(). Моя проблема в том, что он получает фокус для всехHorizontalFieldManager. Я хочу ограничить фокус только стрелками. - person AnkitRox   schedule 21.12.2012navigationClick()влияет на то, как фокус передается между полями, поэтому, если вы не реализуете его правильно, ваша обработка фокуса не будет работать правильно. вот почему я спросил. - person Nate   schedule 22.12.2012bmp = new BitmapField() { protected boolean navigationClick(int status, int time) { return false; }; }- person AnkitRox   schedule 22.12.2012navigationClick(), поэтому я не уверен, какую из них вы используете. Если все, что вы делаете, этоreturn false;вnavigationClick(), то вы сообщаете ОС, что вашBitmapFieldникогда не обрабатывает щелчок, и щелчок должен быть передан другомуFieldилиManagerдля обработки. Это правильно только в том случае, если вашBitmapFieldне кликабельный/фокусируемый. Взгляните на Документация API для navigationClick() - person Nate   schedule 23.12.2012