Легкая часть образа?

Мне нужно создать собственное представление, которое расширяет LinearLayout. Я должен нарисовать на нем изображение. И некоторый процент его площади должен быть освещен, в зависимости от ситуации. Этот процент может быть любым целым числом от 0 до 100. Например, несколько раз ,половина,иногда около 30% и так далее.

На этом изображении показаны три освещенные области вероятности:

введите здесь описание изображения

Я решил нарисовать это изображение методом onDraw(). Но я не знаю, как мне осветить какой-то процент площади этого изображения?

Я не хочу использовать Open GL.


person hasanghaforian    schedule 27.06.2013    source источник


Ответы (1)


Если вы не хотите использовать OpenGL, я бы создал два изображения - одно не освещенное, а второе (поверх первого) освещенное. Оба выровнены правильно, так что вы можете видеть только верхнее изображение.

Теперь, когда вы хотите уменьшить освещенную область, просто обрежьте (а не просто измените размер) верхнее изображение в соответствии с вашими потребностями.

Здесь вы можете прочитать о том, как обрезать изображение:

Обрезать Drawable до квадрата

android - Как вырезать некоторые часть изображения и показать его в представлении изображения

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

person Piotr Chojnacki    schedule 27.06.2013