AppCompatSpinner預設值、預設選中、更改右側箭頭顏色、選項變化監聽、文字居中顯示
阿新 • • 發佈:2019-01-04
1.在程式碼中設定spinner預設值
spinner.setSelection(2,true);
就這樣一行程式碼,很重要 一定要加true。
2.根據值設定spinner預設選中
/**
- 根據值, 設定spinner預設選中:
- @param spinner
- @param value
*/
public static void setSpinnerItemSelectedByValue(Spinner spinner,String value){
SpinnerAdapter apsAdapter= spinner.getAdapter(); //得到SpinnerAdapter物件
int k= apsAdapter.getCount();
for(int i=0;i<k;i++){
if(value.equals(apsAdapter.getItem(i).toString())){
spinner.setSelection(i,true);// 預設選中項
break;
}
}
}
3.更改右側箭頭顏色
更改Spinner右側箭頭顏色
重寫ArrayAdapter可以修改 spinner 下來框的樣式。
但是如果要單單改變spinner那個箭頭的顏色應該這樣:
在styles 裡面新增一個新的style 可以叫 SpinnerStyle
然後在layout中讓相應的spinner 引用這個theme
3.更改右側箭頭顏色的來源
作者:mas17kaworu
來源:CSDN
原文:https://blog.csdn.net/mas17kaworu/article/details/70568891
版權宣告:本文為博主原創文章,轉載請附上博文連結!
4.設定監聽器
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { TextView tv = (TextView) view; tv.setGravity(Gravity.CENTER_HORIZONTAL);//設定文字居中顯示,在XML檔案中無法實現 //TODO選項變更要做的事 } @Override public void onNothingSelected(AdapterView<?> parent) { } });
5.設定文字居中顯示
spinner.setGravity(Gravity.CENTER_HORIZONTAL);//設定文字居中顯示,在XML檔案中無法實現