更改微调项目的颜色

问题描述:

我试着在styles.xml文件中添加属性textcolor更改微调项目的颜色

是否有任何其他方式来更改微调项目的颜色?

该文件显示您的微调的项目,如:

ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.planets_array, Android.R.layout.simple_spinner_item); 
adapter.setDropDownViewResource(Android.R.layout.simple_spinner_dropdown_item); 
spinnerSubject.setAdapter(adapter); 

或使用

spinner.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { 
     @Override 
     public void onGlobalLayout() { 
      ((TextView) spinner.getSelectedView()).setTextColor(Color.WHITE); 
     } 
    }); 

您可以使用此方法定制微调文本颜色:

spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
     @Override 
     public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) { 
      ((TextView) adapterView.getChildAt(0)).setTextColor(Color.WHITE); 
      ((TextView) adapterView.getChildAt(0)).setTextSize(20); 
      ((TextView) adapterView.getChildAt(0)).setTypeface(custom_typeface); 
} 

这就是我做到我的自定义微调:

List<String> tonnage = new ArrayList<String>(); 
    tonnage.add("Not Sure"); 
    tonnage.add("10 Ton"); 
    tonnage.add("20 Ton"); 
    tonnage.add("27 Ton"); 
    tonnage.add("35 Ton"); 
    tonnage.add("40 Ton"); 
    tonnage.add("50 Ton"); 
    tonnage.add("75 Ton"); 
    tonnage.add("80 Ton"); 
    tonnage.add("100 Ton"); 
    tonnage.add("125 Ton"); 
    tonnage.add("150 Ton"); 
    tonnage.add("175 Ton"); 
    tonnage.add("200 Ton"); 
    tonnage.add("Larger than 200 Ton"); 


    ArrayAdapter<String> adapter = new ArrayAdapter<String>(
       this,R.layout.spinner_layout, tonnage); 

     adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     sItems2 = (Spinner) findViewById(R.id.tonrequiredtfholder); 
     sItems2.setAdapter(adapter); 

,这是我spinner_layout XML:

<?xml version="1.0" encoding="utf-8"?> 

<TextView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:textSize="16dp" 
    android:gravity="left" 
    android:textColor="@color/md_green_900" 
    android:padding="5dip" 
    />