我有一個定製的微調(簡單的文本視圖),因爲我想有改變所選項目的背景顏色簡單的解決辦法:的是Android 4.4.2 - 背景顏色不設置微調
spinner_categories.xml
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="150sp"
android:layout_height="40sp"
android:textSize="16sp"
android:gravity="center" />
這些項目是通過定製適配器和基於所選擇的項目,其中的顏色被存儲爲sharedprefs背景顏色變化充氣
main_acitivity
spinner = (Spinner) findViewById(R.id.spinner);
// The spinner items are populated from strings.xml, array elements
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.categories, R.layout.spinner_categories);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
// it sets the background color of the textview based on the selected item
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
((TextView) parent.getChildAt(0)).setTextColor(Color.WHITE);
sharedpref_colorCategory = getSharedPreferences(COLORS_CATEGORY, Context.MODE_PRIVATE);
parent.getChildAt(0).setBackgroundColor(sharedpref_colorCategory.getInt(spinner.getAdapter().getItem(position).toString(), 0));
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
的文字是白色的宗旨,全力打造與背景的對比度。現在,當我在我的三星S5(Android 5.0 - API 21)或模擬器上安裝它時,背景顏色顯示正確,而一個華爲Y360(Android 4.4.2 - API 19)的背景顏色是總是白色的,所以我看不到選定的項目。 的的build.gradle已配置如下:
的build.gradle
minSdkVersion 16
targetSdkVersion 16
是否有人知道我怎麼能解決這個問題?
謝謝!
朱塞佩
答案: 我應該使用setBackgroundResource代替,並在colors.xml文件
從Spinner中選擇項目之後,是否想要更改該特定項目的顏色,或者想要調整Spinner內部整個文本的顏色 –
我想根據所選內容更改背景顏色微調項... –