2016-07-25 22 views
0

私はツールバーにスピナーを追加しようとしていましたが、私が望むものを達成できませんでした。白いテキストと白いポップアップの背景を持つSpinnerのAndroidツールバー?

これはこれまで私が行ってきたことです。

enter image description here enter image description here

あなたはスクリーンショットで見ることができるように、スピナーの選択したテキストの色が黒ではポップアップがテキストの色を黒と白の背景(これはokですがありながら、(私はそれが白になりたいです) )。

ここに私のコードです。

 <android.support.v7.widget.Toolbar 
     android:id="@+id/bottom_toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     android:background="?attr/colorPrimary" 
     app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
     android:layout_alignParentBottom="true"> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="horizontal"> 

      <ImageButton 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:background="@drawable/ic_date_range_white_24dp" /> 

      <android.support.v7.widget.AppCompatSpinner 
       android:id="@+id/date_range" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:entries="@array/date_range_options" 
       android:spinnerMode="dropdown" /> 

     </LinearLayout> 

    </android.support.v7.widget.Toolbar> 

私は、ツールバーを変更し、アプリを追加する場合:以下のようなテーマ=「@スタイル/ ThemeOverlay.AppCompat.Dark.ActionBar」:

<android.support.v7.widget.Toolbar 
     android:id="@+id/bottom_toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     android:background="?attr/colorPrimary" 
     app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
     app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
     android:layout_alignParentBottom="true"> 

を私は選択したスピナーの白いテキストの色を取得しますポップアップの背景も白いテキスト色で暗くなります。

私は選択したテキストの色と黒いテキストの白いポップアップの背景を持っています。

どうすればよいですか?

答えて

0

あなたはこの

<android.support.v7.widget.AppCompatSpinner 
       android:id="@+id/date_range" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:entries="@array/date_range_options" 
       android:theme="@style/spinnerStyle 
       android:spinnerMode="dropdown" /> 

を行うには、テーマを使用し、あなたのスタイルでどんな色で、使用したいwhite_text @色を/置換

<style name="spinnerStyle" parent="AppTheme"> 
    <item name="colorControlNormal">@color/white_text</item> 
    <item name="colorControlActivated">@color/white_text</item> 
    <item name="colorControlHighlight">@color/white_text</item> 
</style> 

を提出することができます。

+0

hi。私はあなたの提案を試みたが、うまくいかなかった。上記のスクリーンショットと同じ効果を示します。 – ank

+0

多分それがツールバーにあるので妙です。それは私にとって奇妙なことです。スピナーにカスタムアダプターを使用していますか?そうであれば、getViewメソッドでこれを行うことができます。TextView textView =(TextView)convertView.findViewById(android.R.id.text1); deviceName.setTextColor(ContextCompat.getColor(getContext()、R.color.white_text)); スピナーのデフォルトのレイアウトを使用しているとします(android.R.layout.simple_list_item_1) – Ben

+0

いいえ、私はアダプターを使用していません。これはすべてXML上にあります。 – ank

関連する問題