我只是想根据Json结果制作一个改变颜色的文本视图,例如,如果“statusspp”的结果是SPP,颜色textview是RED,当“statusspp”的结果是SP2D时,则颜色textview是绿色。< / p>
这是我的代码:
byte[] decodedString = Base64.decode(people.getPeopleImage(), Base64.DEFAULT);
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length, options);
options.inSampleSize = calculateInSampleSize(options, 100, 100);
options.inJustDecodeBounds = false;
Bitmap bmp1 = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length, options);
if (bmp1 != null) {
holder.ivPeopleImage.setImageBitmap(bmp1);
}
答案 0 :(得分:1)
准备好数据后 你可以简单地使用开关案例
switch(case){
case SPP:
textview.setBackgroundResource(getResources().getColor(R.color.RED))
case SP2D:
textview.setBackgroundResource(getResources().getColor(R.color.GREEN))
}
确保首先用颜色xml定义颜色
答案 1 :(得分:0)
在listView onItemClickListener之前初始化textView并使用setTextColor方法更改textColor
例如
TextView text =(TextView) view.findViewById(R.id.latitude));
String statusspp = text.getText().toString();
if(statusspp.equals("SPP")){
text.setTextColor(Color.RED);
text. setBackgroundColor(Color.RED);//to change background}
else if(statusspp.equals("SP2D")){
text.setTextColor(Color.GREEN);
text. setBackgroundColor(Color.GREEN);//to change background}
注意:不要像这样String statusspp = ((TextView) view.findViewById(R.id.latitude)).getText().toString();
初始化你不能重用代码