2017-01-05 3 views
1

私は、theme.xmlファイルで定義されたグローバルスタイルを持っています。これには、<item name="colorControlActivated">@color/white</item>という項目が含まれます。Android - theme.xmlスタイルのオーバーライド

私は背景を選択した背景にこのスタイルアイテムを使用するDatePickerがあり、白い背景に...です。したがって、選択された日付は見えません。

この

は日付ピッカーです:

<DatePicker 
    android:id="@+id/DatePicker" 
    style="@style/date_picker_theme" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:calendarViewShown="false" 
    android:descendantFocusability="blocksDescendants" 
    android:endYear="2100" 
    android:startYear="1900" /> 

と私はそのような(のstyles.xml中)colorControlActivatedスタイルを上書きしようとした:

<style name="date_picker_theme"> 
    <item name="colorControlActivated">@color/green</item> 
</style> 

が、それは全く反映していません。

theme.xmlのスタイルアイテムを<item name="colorControlActivated">@color/green</item>に変更した場合、それは問題なく反映されますが、アプリ全体で他のスタイルが変更される可能性があります。

質問:これは私のDatePickerでのみオーバーライドできますか?それが今どのように見えるか

enter image description here

それはをどのように見えるべきか:

enter image description here

答えて

1

を代わりに

style="@style/date_picker_theme" 
としてそれを設定します

android:theme="@style/date_picker_theme" 

<DatePicker 
    android:id="@+id/DatePicker" 
    android:theme="@style/date_picker_theme" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:calendarViewShown="false" 
    android:descendantFocusability="blocksDescendants" 
    android:endYear="2100" 
    android:startYear="1900" /> 
以下

完全な日付ピッカービューとして設定

関連する問題