将管理器添加到BlackBerry Screen的底部

时间:2012-05-28 19:37:33

标签: blackberry java-me

我正在尝试创建一个布局,如下图所示:

enter image description here

以下是我的屏幕组件

  1. 屏幕标题字段
  2. 按钮位于屏幕中央
  3. HorizontalFieldManager包含停靠在屏幕底部的3个按钮
  4. 添加横幅,放置在停靠位置下方。
  5. 我已经完成了所有的1,2和4.我使用了setStatus(Field)来放置广告横幅。另外,我已经定制了HorizontalFieldManager来保持3个对齐的字段。现在我不知道如何将它放在添加横幅上方的屏幕底部,因为我已经将setStatus()用于广告横幅。此外,如果虚拟键盘出现,我希望它覆盖屏幕的底部,而不是推动Horizo​​nalFieldManager和广告横幅。

2 个答案:

答案 0 :(得分:0)

将广告横幅和3个对齐字段与VerticalFieldManager相结合,然后将合并后的管理器传递给setStatus()。

答案 1 :(得分:0)

不要使用setstatus添加横幅内容,而是考虑到Display.getHeight(),可以在屏幕底部使用两个水平管理器。

我在我的应用程序中完成了类似的屏幕,这是关于它的简要信息。

1)父管理器(垂直/水平)说父管理器

2)两个具有适当高度和最大宽度的Horozontal管理器(在水平管理器的子布局中覆盖)并将这两个添加为一个垂直场管理器(bottommanager)

3)然后这里有棘手的部分。向父级管理器覆盖子布局并添加这些步骤

vfm_screen = new VerticalFieldManager(ScrollView.NO_VERTICAL_SCROLL | HORIZONTAL_SCROLL
                | NO_VERTICAL_SCROLL){

            protected void sublayout(int maxWidth, int maxHeight) {
                setPositionChild(parentManager, 0, 0);
                layoutChild(parentManager, Display.getWidth(), Display.getHeight());
                setPositionChild(bottommanager, 0, Display.getHeight()-114);
                layoutChild(bottommanager, Display.getWidth(), 114);
                setExtent(Display.getWidth(), Display.getHeight());
            };
        };

vfm_screen.add(parentManager);

vfm_screen.add(bottommanager);

add(vfm_screen);

114这里的尺寸很大,您可以根据您的要求更改。并将Button添加到屏幕中心的父母管理器。