web-dev-qa-db-ja.com

textviewを使用せずにスピナーでテキストの色を変更する方法

スピナーのテキストの色を変更したいtextViewを使用せずに、すでにいくつかのチュートリアルを検索して見つけました Android:スピナーウィジェットのテキストの色属性はどこに隠れていますか? ==

しかし、主なことは、彼らがtextViewを使用したことです。

<Spinner 
     Android:layout_height="wrap_content" 
     Android:layout_width="0dp" 
     Android:layout_weight="1" 
     Android:entries="@array/Gender_Selection_arrays" 
     Android:Prompt="@string/Gender_Selection"
     Android:id="@+id/gendersel"
     Android:popupBackground="#67656c"/>

このコードはテキストの色を変更するものではないことを私は知っています。

どうすればいいのかわからないので、教えてください。

どんな助けでも評価できるでしょう。

7
Ashish Jaiswal

私はこれに対する解決策を得ました、新しいxml「spinner_style.xml」を作成します

<?xml version="1.0" encoding="UTF-8"?>
<TextView 
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:layout_width="fill_parent"
    Android:layout_height="fill_parent"
    Android:textColor="@color/Black" />

そして、このレイアウトをアクティビティのスピナースタイルとして修正します。

   ArrayAdapter<String > gender_adapter = new ArrayAdapter<String> (getActivity(), R.layout.spinner_style,gender_spinner );
11
Ashish Jaiswal

あなたのスピナー

<Spinner 
    Android:layout_height="wrap_content" 
    Android:layout_width="0dp" 
    Android:layout_weight="1" 
    Android:entries="@array/Gender_Selection_arrays" 
    Android:Prompt="@string/Gender_Selection"
    Android:id="@+id/gendersel"
    style="@style/mySpinnerItemStyle"
    Android:popupBackground="#67656c"/>

mySpinnerItemStyle(これをstyles.xmlに追加します)

<style name="mySpinnerItemStyle" parent="Base.Widget.AppCompat.Spinner">
    <item name="Android:textColor">@color/my_spinner_text_color</item>
</style>

そして最後にcolors.xmlで

<color name="my_spinner_text_color">#FFFFFF</color>

mySpinnerItemStyleBase.Widget.AppCompat.Spinnerから継承し、その中でAndroid:textColor属性はスピナーテキストの色を変更します

3
capt.swag