Вы правы. A VerticalFieldManager
не позволяет напрямую setStatus()
.
Важно понимать взаимосвязь между классами в интерфейсе пользовательского интерфейса BlackBerry.
Прежде всего, есть классы Screen
. Обычно Screen
занимает весь экран устройства. В вашем приложении может быть много разных классов Screen
. Может быть, один Screen
для изображения заставки, один экран для просмотра карты, один экран для настройки и т.д.
Внутри ваших экранов, вы часто будете иметь Manager
классов. A VerticalFieldManager
- это вид Manager
, который упорядочивает его содержимое сверху вниз, в том порядке, в котором вы их добавляете. A Manager
содержит группу связанных объектов, но она не должна охватывать всю высоту экрана или ширину.
Внутри Ваши менеджеры, как правило, имеют несколько объектов Field
. A Field
- это отдельный элемент в иерархии. ButtonField
, EditField
, или BrowserField
- все виды полей. Обычно они добавляются к менеджерам (контейнерам). Затем эти менеджеры будут добавлены к экранам.
Итак, в вашем случае, я думаю, что вы должны иметь класс экрана. В этом классе экрана вы установите заголовок и нижний колонтитул по телефону setTitle()
и setStatus()
. Содержимое между верхним и нижним колонтитулами будет содержаться в файле VerticalFieldManager
, который вы добавите на экран. Что-то вроде этого:
public class MyScreen extends MainScreen {
public MyScreen() {
super(MainScreen.VERTICAL_SCROLL | MainScreen.VERTICAL_SCROLLBAR);
// set a header for this screen
setTitle("My Header/Title");
// screen contents go in the vertical field manager
// NOTE: you can replace VerticalFieldManager with your own class
// that extends Manager, or VerticalFieldManager, if you like
VerticalFieldManager vfm = new VerticalFieldManager();
vfm.add(new LabelField("One"));
vfm.add(new ButtonField("Two", ButtonField.CONSUME_CLICK));
vfm.add(new CheckboxField("Three", true));
add(vfm);
// use a bitmap as a footer
Bitmap footer = Bitmap.getBitmapResource("footer.png");
setStatus(new BitmapField(footer));
}
}
вы показать код, который вы пробовали? – Signare
Привет, в классе он не показывает мне функцию setStatus. Для этого я создал объект класса MyScreen и использовал функцию setStatus следующим образом. MyScreen.footer.setStatus (BannerAd); – suprita
Что такое нижний колонтитул?. Если ваш класс расширяет основной экран, используйте setStatus (youir_field); – Signare