Есть ли способ добавить в форму пустую строку? Я хочу показать датчик в форме, но он должен быть выровнен по центру. Я думаю, что нет способа сделать это, если перед датчиком нет нескольких элементов. Итак, я подумал добавить несколько нулевых строковых элементов, но они не работают. Пока это мой код.
loadingDialog = new javax.microedition.lcdui.Form("Please Wait");
Gauge gau = new Gauge("\nPlease wait.", false, Gauge.INDEFINITE,
Gauge.CONTINUOUS_RUNNING);
gau.setPreferredSize(230,80);
gau.setLayout(Item.LAYOUT_BOTTOM);
//Displayable SizeCanvas = new MyCanvas();
StringItem st = new StringItem(" ", " ");
loadingDialog.append(st);
loadingDialog.append(gau);
parentMidlet.displays.setCurrent(loadingDialog);
1 ответ
Существует специальная директива макета для центрирования элемента, что неудивительно, LAYOUT_CENTER
Используя предоставленный вами фрагмент кода, эту директиву можно задать следующим образом:
gau.setLayout(Item.LAYOUT_BOTTOM | Item.LAYOUT_CENTER);
Или, если вы хотите установить его в отдельном операторе,
gau.setLayout(gau.getLayout() | Item.LAYOUT_CENTER);
Если ваше устройство - MIDP 2.0, эта директива не обязана следовать (хотя можно ожидать, что устройство разумного качества будет поддерживать ее). В устройстве MIDP 2.1 он должен поддерживаться явным требованием в спецификации.
Кстати, для более сложных целей выравнивания элементов существует специальный объект lcdui с именем Spacer:
Пустой неинтерактивный элемент с настраиваемым минимальным размером. Минимальная ширина полезна для распределения свободного пространства между элементами в одной строке формы. Минимальная высота полезна для обеспечения определенной минимальной высоты строки. Приложение может установить минимальную ширину или высоту на любое неотрицательное значение. Реализация может применять определенные реализацией максимальные значения для минимальной ширины и высоты ...
... Основная цель Spacer - позиционировать другой элемент ...
Похожие вопросы
Новые вопросы
java-me
Java Platform, Micro Edition или Java ME - это платформа Java, разработанная для встраиваемых систем.
LAYOUT_CENTER
, из-за которой Gauge может находиться на отдельной «строке». Как я уже упоминал, с распорками и продвинутыми элементами макета довольно быстро могут возникнуть сложности.