#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, используя одно из ваших предыдущих сообщений. Это работает довольно хорошо. Спасибо.