Android - 设置微调器中特定项目的文本颜色
Android - Setting the text colour of specific items in a spinner
我有一个微调器,其中填充了一个拼图名称列表。其中一些拼图名称已被下载,一些还没有。如果已下载,我想将这些项目的文本颜色更改为绿色,如果未下载则更改为红色。目前所有名字都是黑色的。
有谁知道如何更改特定项目。
谢谢
为您的微调器使用自定义适配器,并根据您下载的值将 selector 添加到 TextView 的 textColor 和 select 在适配器中..
使用以下代码查看此 question:
public class CustomizedSpinnerAdapter extends ArrayAdapter<String> {
private Activity context;
String[] data = null;
public CustomizedSpinnerAdapter(Activity context, int resource, String[] _data) {
super(context, resource, data2);
this.context = context;
this.data = _data;
}
...
@Override
public View getDropDownView(int position, View convertView, ViewGroup parent) {
View row = convertView;
if(row == null) {
//inflate your customlayout for the textview
LayoutInflater inflater = context.getLayoutInflater();
row = inflater.inflate(R.layout.spinner_layout, parent, false);
}
//put the data in it
String item = data[position];
if(item != null) {
TextView text1 = (TextView) row.findViewById(R.id.rowText);
text1.setTextColor(Color.WHITE);
text1.setText(item);
}
return row;
}
}
并且在 getDropDownView
中,您可以根据数据手动设置文本颜色
我有一个微调器,其中填充了一个拼图名称列表。其中一些拼图名称已被下载,一些还没有。如果已下载,我想将这些项目的文本颜色更改为绿色,如果未下载则更改为红色。目前所有名字都是黑色的。
有谁知道如何更改特定项目。
谢谢
为您的微调器使用自定义适配器,并根据您下载的值将 selector 添加到 TextView 的 textColor 和 select 在适配器中..
使用以下代码查看此 question:
public class CustomizedSpinnerAdapter extends ArrayAdapter<String> {
private Activity context;
String[] data = null;
public CustomizedSpinnerAdapter(Activity context, int resource, String[] _data) {
super(context, resource, data2);
this.context = context;
this.data = _data;
}
...
@Override
public View getDropDownView(int position, View convertView, ViewGroup parent) {
View row = convertView;
if(row == null) {
//inflate your customlayout for the textview
LayoutInflater inflater = context.getLayoutInflater();
row = inflater.inflate(R.layout.spinner_layout, parent, false);
}
//put the data in it
String item = data[position];
if(item != null) {
TextView text1 = (TextView) row.findViewById(R.id.rowText);
text1.setTextColor(Color.WHITE);
text1.setText(item);
}
return row;
}
}
并且在 getDropDownView
中,您可以根据数据手动设置文本颜色