Как сделать круглое изображение, покрытое другим цветом - PullRequest
0 голосов
/ 18 августа 2011

У меня есть круглое изображение. Оно отображается в виде списка. В каждом элементе списка есть один текст и это изображение. Это круглое изображение имеет один цвет. Как можно сделать часть этого изображения покрытой любым другимцвет. Любая помощь будет оценена.

Ответы [ 2 ]

1 голос
/ 18 августа 2011

Убедитесь, что изображение у вас на прозрачном фоне.Затем вырежьте часть изображения, цвет которой вы хотите изменить.Затем в вызове вашей программы setBackgroundColor (int myColor) и заданный вами цвет будет отображаться через.

Редактировать: Используя Photoshop или вашу любимую программу для редактирования изображений, подготовьте свое изображение, обеспечив егонаходится на прозрачном фоне.Затем вырезать часть, которую вы хотите изменить цвет.Сохраните изображение в папке drawable-hdpi в вашем проекте Android.Затем установите цвет фона на нужный вам цвет, и он будет отображаться через вырез, например

ImageView icon = new ImageView(context);
icon.setId(1);      
icon.setImageResource(R.drawable.paint_splat);      
icon.setBackgroundColor(pickedColour);

В приведенном выше примере мое изображение paint_splat показано ниже:

enter image description here

белые области не белые - они полупрозрачные.Если вы не знаете, как это сделать, вам нужно прочитать о редактировании изображений в любой программе для редактирования изображений, которую вы будете использовать.Затем последний вызов:

icon.setBackgroundColor(pickedColour);

Устанавливает цвет фона, но это можно увидеть только через полупрозрачную часть изображения, и поэтому он меняет цвет, в моем случае, брызги краски.

Кроме того, если цвет, который вы используете для переднего края, соответствует цвету основного экрана вашего приложения, в моем случае изображение сплат имеет черный цвет переднего плана, а мое приложение для Android имеет черный экран, тогда видны ТОЛЬКО цветные пятна краскитак что похоже, что все изображение меняет цвет.

0 голосов
/ 26 октября 2012

Если вы хотите изменить цвет фона изображения во время выполнения ......

тогда используйте этот простой код ...

это хорошо работает ....

 final ImageView image=(ImageView)findViewById(R.id.image_view);

   int number1=(int) (Math.random()*255);
   int number2=(int) (Math.random()*255);
   int number3=(int) (Math.random()*255);

   int image_colour=android.graphics.Color.rgb(number1, number2, number3);
   image.setColorFilter(image_colour);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...