Android 實現夜間模式

EDVRosie 8年前發布 | 12K 次閱讀 Android開發 移動開發

來自: http://blog.csdn.net//never_cxb/article/details/50620539


方法1

建一個 value-night 的文件夾,colors.xml如下:

<resources>
    <color name="colorPrimary">#7D4112</color>
    <color name="colorPrimaryDark">#7D4112</color>
    <color name="colorAccent">#1F1F1F</color>
</resources>
@Override
public boolean onNavigationItemSelected(MenuItem menuItem) {

int id = menuItem.getItemId();

switch (id) {
    case R.id.nav_setting:
        Toast.makeText(this, "夜間模式", Toast.LENGTH_LONG).show();
        if (isNightMode) {
            uiManager.enableCarMode(0);
            uiManager.setNightMode(UiModeManager.MODE_NIGHT_YES);
            isNightMode = !isNightMode;
        } else {
            uiManager.disableCarMode(0);
            uiManager.setNightMode(UiModeManager.MODE_NIGHT_NO);
            isNightMode = !isNightMode;
        }
        return true;
    default:
        return true;
}

}</pre>

統計結果1
但是這種方法會開啟車載模式
統計結果1

在筆者的測試機(紅米1s)中,這種方法會先退出應用,再啟動應用已經是夜間模式

注意點

CardView 的背景色是app:cardBackgroundColor="?attr/windowBackground"設置,不是普通的android:background

</div>

 本文由用戶 EDVRosie 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!