【问题标题】:How to make MainScreen background image transparent?如何使 MainScreen 背景图像透明?
【发布时间】:2011-05-12 16:50:58
【问题描述】:

我有一个 MainScreen、VerticalFieldManager 和 ListField。我想将背景图像添加到 MainScreen 作为透明。这是我的代码,背景图片位于所有其他字段的顶部。

Background bg = 
    BackgroundFactory.createBitmapBackground(
        Bitmap.getBitmapResource(BACKGROUND_IMAGE_PATH)
    );
setBackground(bg);
VerticalFieldManager verticalFieldManager = new VerticalFieldManager();
MyListField listField = new MyListField();
verticalFieldManager.add(listField);
add(verticalFieldManager);

我该如何解决这个问题?

【问题讨论】:

    标签: blackberry java-me


    【解决方案1】:

    也许我没有完全满足您的需求。但是,如果您想添加半透明覆盖,我认为应该可以通过覆盖 MainScreen.paint(Grahpics grahpics)。

    所以首先你调用super.paint(grahpics) 允许整个屏幕自己绘制(包括所有子字段)。然后,您只需使用Grahpics.drawBitmap(int x, int y, int width, int height, Bitmap bitmap, int left, int top) 在屏幕上绘制半透明图像。

    【讨论】:

    • 好的,我先调用了super.paint(),然后我使用了drawBitmap()。但所有领域似乎都在图像之下。是否与透明度或其他有关?
    • 您的意思是您只看到覆盖层而没有看到字段?如果这是您得到的,请确保您的叠加图像是 透明 PNG。
    • 你是对的,它不透明。但是,我决定使用您之前的一篇文章将背景设置为 VerticalFieldManager。它工作得很好。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2016-12-08
    • 2013-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-15
    • 1970-01-01
    相关资源
    最近更新 更多