Как изменить цвет фона TextView в Android? - PullRequest
0 голосов
/ 29 сентября 2010

На самом деле, я хочу текстовое представление, которое может показать прогресс чего-либо, я знаю прогрессбар в Android, однако, насколько я знаю, он не может содержать какой-либо текст (я прав?), Поэтому я хочуизменить цвет фона текстового представления для постепенного отображения слева направо.

Есть ли другой способ сделать это?

Заранее спасибо?

Ответы [ 3 ]

2 голосов
/ 29 сентября 2010

Использовать textview.setBackgroundResource (R.color.yourcolor);

0 голосов
/ 29 сентября 2010

Почему бы не попробовать это по-другому? Используйте RelativeLayout, ProgressBar и поместите TextView поверх ProgressBar. Измените свойства макета / индикатора выполнения, чтобы TextView располагался внутри центра индикатора выполнения. Таким образом, вы можете изменить прогресс бара и в то же время легко отображать текст прогресса.

0 голосов
/ 29 сентября 2010

Я сделал нечто подобное, но для фона элемента списка.

Хитрость в том, чтобы нарисовать фон на Bitmap, обернуть его в BitmapDrawable и передать последний в TextView, используя setBackgroundDrawable:

Bitmap b = getProgressBackground();
BitmapDrawable bd = new BitmapDrawable(b);
textView.setBackgroundDrawable(bd);

GetProgressBackground - это пользовательская функция. Суть этого:

Bitmap b = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
Canvas c = new Canvas();
c.setBitmap(b);

//Draw stuff on the Canvas

return b;
...