У меня есть HorizontalFieldManager с двумя кнопками внутри. Кнопки должны быть расположены в крайнем левом и правом нижнем углу экрана соответственно. Я знаю, что HorizontalFieldManager размещает их только слева направо, поэтому мне нужно расширить их.
Вот то, что я сделал, но это не приносит плода. Кнопки do появляются, но слишком маленькие и без текста (который я уже установил).
Вот мой код компоновки.
protected void sublayout(int width, int height) {
setPositionChild(getField(0), 0, 0);
int fieldZeroWidth = Max(getField(0).getContentWidth(),getField(0).getPreferredWidth());
int fieldZeroHeight = Max(getField(0).getContentHeight(),getField(0).getPreferredHeight());
layoutChild(getField(0),
fieldZeroWidth,
fieldZeroHeight);
int fieldOneWidth = Max(getField(1).getContentWidth(),getField(1).getPreferredWidth());
setPositionChild(getField(1),
Display.getWidth() - fieldOneWidth,
0);
int fieldOneHeight = Max(getField(1).getPreferredHeight(),getField(1).getContentHeight());
layoutChild(getField(1),
fieldOneWidth,
fieldOneHeight
);
setExtent(Display.getWidth(), Max(getPreferredHeight(),fieldOneHeight,fieldZeroHeight));
}
После создания этого пользовательского менеджера я добавляю его внизу с помощью функции setStatus ().
Я хочу, чтобы две кнопки появлялись на противоположных сторонах (что они и делают), однако в правильном размере с отображаемым текстом.
Спасибо
Очевидно, функции Max просто возвращают наибольшее значение между аргументами.