gpt4 book ai didi

android - 更新夜间模式的小部件

转载 作者:行者123 更新时间:2023-12-05 07:45:26 24 4
gpt4 key购买 nike

我在android中做了一个简单的笔记Widget。我在其中添加了夜间模式功能,小部件颜色将从白天的红色变为晚上的黑色。我使用这段代码让应用程序根据一天中的时间更改小部件:

    // Find Night Mode Automatically//
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_AUTO);

// Checks Whether app Is In Night Mode Or Not//
int currentNightMode = context.getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;

// Checks All Scenarios//
switch (currentNightMode) {

// Night Mode Is Not Active, We're In Day Time//
case Configuration.UI_MODE_NIGHT_NO: {

// Instantiate Variable RemoteViews remoteViews / Directs Activity To GUI//
RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.note_widget_ui);

// Initiate viewText Method//
viewText(context, remoteViews);

// Kill Code//
break;
}

// Night Mode Is Active, We're At Night!//
case Configuration.UI_MODE_NIGHT_YES: {

// Instantiate Variable RemoteViews remoteViews / Directs Activity To GUI//
RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.note_widget_night_ui);

// Initiate viewText Method//
viewText(context, remoteViews);

// Kill Code//
break;
}

// We Don't Know What Mode We're In, Assume Notnight//
case Configuration.UI_MODE_NIGHT_UNDEFINED: {

// Instantiate Variable RemoteViews remoteViews / Directs Activity To GUI//
RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.note_widget_ui);

// Initiate viewText Method//
viewText(context, remoteViews);

// Kill Code//
break;
}
}

如何使用此代码使小部件在夜间模式开启后更新其颜色。另一个例子是 nova launcher 和 google bar widget。一旦 android 激活夜间模式,它就会切换。有人知道怎么做吗?

最佳答案

我让它工作并使用了很多你正在做的事情。我的演示展示了在小部件上工作的昼夜主题。 :) 有问题,应用程序必须正在运行才能确定处于何种模式。但如果它不做汽车那么一直工作https://github.com/juanmendez/android-styling-recipes/tree/02.dayNightTheme+Widget

这只是一个答案。这是一个完整的答案。我在与应用程序一起使用时编写了一个库,然后它需要您需要包含的某些依赖项。然后它利用您的依赖项并允许您的 WidgetProvider 将小部件更新为白天或晚上的主题。 https://github.com/juanmendez/LightThemeScheduler

关于android - 更新夜间模式的小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41646708/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com