0

我准备了一个屏幕,允许用户在其中创建帐户。如第一张图片所示,我使用图像(bg_BB.png 图像)作为MainScreen背景,之后我拍摄了另一个 VFM 并在该垂直字段管理器上绘制了白色背景(white_bg2.png)并在该 VFM 上添加了我的所有字段.

但是当键盘弹出时,问题就出现了。如第二张图片所示,所有字段都漂浮在背景上。

下面是我正在使用的代码:

Bitmap backGroundImage = Bitmap.getBitmapResource("bg_BB.png");
((VerticalFieldManager) getMainManager()).setBackground(BackgroundFactory.createBitmapBackground(backGroundImage));

final Bitmap tabBackGroundImage = Bitmap.getBitmapResource("white_bg2.png");

_mainVfm = new VerticalFieldManager(Field.USE_ALL_WIDTH) {

    protected void paint(Graphics graphics) {
        int y = CreateUserAccountScreen.this.getMainManager().getVerticalScroll();
        graphics.drawBitmap(0, y, 
                            tabBackGroundImage.getWidth(), 
                            tabBackGroundImage.getHeight(), 
                            tabBackGroundImage, 
                            0, 0 );

        super.paint( graphics );
    }
};

在此处输入图像描述 在此处输入图像描述

4

1 回答 1

1

将您的代码替换为:

Bitmap tabBackGroundImage = Bitmap.getBitmapResource("white_bg2.png");
VerticalFieldManager _mainVfm = new VerticalFieldManager(Manager.VERTICAL_SCROLL | 
          Manager.VERTICAL_SCROLLBAR|
          Manager.USE_ALL_WIDTH);
_mainVfm.setBorder( BorderFactory.createBitmapBorder(
               new XYEdges(12,12,12,12), tabBackGroundImage
       )
);     

确保您的边框图像具有白色背景。
我使用这种方法,效果很好。

于 2012-09-15T18:29:52.383 回答