Java 更改微调器第一行中的文本颜色
我有一个纺纱机。当用户单击它时,会出现一个对话框,其中有几行和文本可供选择。微调器中的默认文本是Java 更改微调器第一行中的文本颜色,java,android,Java,Android,我有一个纺纱机。当用户单击它时,会出现一个对话框,其中有几行和文本可供选择。微调器中的默认文本是选择工具。第一行文本相同,即选择设备。现在,我想更改微调器对话框第一行中的文本颜色,即选择工具的颜色 我怎样才能做到这一点 这是我相信可以更改的代码 if (position == 0 && hideFirstText) { ((TextView) convertView).setText(R.string.select_facility); conve
选择工具
。第一行文本相同,即选择设备
。现在,我想更改微调器对话框第一行中的文本颜色,即选择工具的颜色
我怎样才能做到这一点
这是我相信可以更改的代码
if (position == 0 && hideFirstText) {
((TextView) convertView).setText(R.string.select_facility);
convertView.setBackgroundResource(R.color.light_green);
return convertView;
}
这是我已经尝试过的
((TextView) convertView).setTextColor(4737352);
但上述解决方案完全删除了第一行文本
我也试过这个
convertView.setTextColor(4737352);
但是convertView没有setTextColor()方法。当对话框打开时,它会在内部调用getDropDownView,所以像这样自定义适配器的此方法
public View getDropDownView (int position, View convertView, ViewGroup parent){
View row=super.getView(position, convertView, parent);
if(position == 0){
//Do custom stuff here like find textview & change textcolor
}
return(row);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
TextView text = (TextView) view.findViewById(R.id.spinner);
text.setTextColor(Color.RED);
return view;
}
您应该重写getView方法,如下所示
public View getDropDownView (int position, View convertView, ViewGroup parent){
View row=super.getView(position, convertView, parent);
if(position == 0){
//Do custom stuff here like find textview & change textcolor
}
return(row);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
TextView text = (TextView) view.findViewById(R.id.spinner);
text.setTextColor(Color.RED);
return view;
}