我正在尝试配置DayNight主题。
我的 values / style.xml 和( values-night / style.xml )是:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.DayNight">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
</resources>
和 colors.xml 是:
<resources>
<color name="colorPrimary">#008577</color>
<color name="colorPrimaryDark">#00574B</color>
<color name="colorAccent">#D81B60</color>
<color name="lSun">#ff9800</color>
<color name="lMoon">#3f51b5</color>
<color name="lMoonDark">#4f9fbd</color>
</resources>
现在,像
<TextView
android:id="@+id/mr_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/longi"
android:layout_marginStart="16dp"
android:layout_marginTop="5dp"
android:layout_toEndOf="@+id/sunset"
android:fontFamily="@font/weathericons"
android:paddingTop="-2dp"
android:text="@string/moonrise"
android:textAlignment="center"
android:textAppearance="@android:style/TextAppearance.Material.Menu"
android:textColor="@color/lMoon"
android:textSize="14sp" />
在这里,我希望@color/lMoon
代表浅色主题,@color/lMoonDark
代表深色主题。
我该如何实现?
答案 0 :(得分:0)
制作两种样式,并将所需样式赋予TextView。
<style name="MyTextView" parent="@android:style/TextAppearance.Small">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textColor">@android:color/white</item>
<item name="android:textSize">12sp</item>
</style>
<TextView
style="@style/MyTextView"
android:id="@+id/mr_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/longi"
android:layout_marginStart="16dp"
android:layout_marginTop="5dp"
android:layout_toEndOf="@+id/sunset"
android:fontFamily="@font/weathericons"
android:paddingTop="-2dp"
android:text="@string/moonrise"
android:textAlignment="center"
android:textAppearance="@android:style/TextAppearance.Material.Menu"
android:textColor="@color/lMoon"
android:textSize="14sp" />