在Android中,可以使用getColor
方法來獲取特定主題中的顏色。為了適配暗黑模式,可以在res/values
文件夾中創建colors.xml
文件,并在其中定義兩種不同主題下的顏色值,如下所示:
<!-- 在res/values/colors.xml中定義亮色主題下的顏色值 -->
<color name="colorPrimary">#FF4081</color>
<color name="colorPrimaryDark">#E91E63</color>
<color name="colorAccent">#FF5252</color>
<!-- 在res/values-night/colors.xml中定義暗黑模式下的顏色值 -->
<color name="colorPrimary">#3F51B5</color>
<color name="colorPrimaryDark">#303F9F</color>
<color name="colorAccent">#FF4081</color>
然后,在代碼中使用getColor
方法來獲取主題下的顏色值,如下所示:
int colorPrimary = ContextCompat.getColor(context, R.color.colorPrimary);
int colorPrimaryDark = ContextCompat.getColor(context, R.color.colorPrimaryDark);
int colorAccent = ContextCompat.getColor(context, R.color.colorAccent);
這樣,在不同主題下,getColor
方法將返回相應的顏色值,從而實現暗黑模式下的顏色適配。