Как сделать фоновое изображение на главном экране прозрачным?

#blackberry #java-me

#ежевика #java-me

Вопрос:

У меня есть главный экран, VerticalFieldManager и ListField. Я хочу добавить фоновое изображение на главный экран как прозрачное. Вот мой код, и фоновое изображение находится поверх всех остальных полей.

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

Как я могу это исправить?

Ответ №1:

Возможно, я не полностью понимаю ваши потребности. Однако, если вы хотите добавить полупрозрачное наложение, я думаю, это должно быть возможно с помощью переопределения MainScreen.paint(Grahpics grahpics) .

Итак, сначала вы вызываете super.paint(grahpics) разрешение на самоокрашивание всего экрана (включая все дочерние поля). Затем вы просто рисуете полупрозрачное изображение поверх экрана с помощью Grahpics.drawBitmap(int x, int y, int width, int height, Bitmap bitmap, int left, int top) .

Комментарии:

1. Хорошо, сначала я вызвал super.paint (), затем я использовал drawBitmap (). Но все поля отображаются под изображением. Связано ли это с прозрачностью или с чем-то другим?

2. Вы имеете в виду, что видите только наложение и не видите полей? Если это то, что вы получаете, то убедитесь, что ваше наложенное изображение является прозрачным в формате PNG.

3. Вы правы, оно не было прозрачным. Однако я решил установить фон для VerticalFieldManager, используя одно из ваших предыдущих сообщений. Это работает довольно хорошо. Спасибо.