如何在NativeScript 7上获取暗模式状态(暗/亮模式打开)?有没有办法使用@nativescript/core来实现它,因为旧的@nativescript/theme方式现在似乎不起作用(可能还不完全兼容NativeScript 7)。
@nativescript/core
@nativescript/theme
8wtpewkr1#
你什么意思如何获得黑暗模式状态Theme.getMode()会告诉你它是自动、黑暗还是明亮模式。例如,如果我从我的手机启用了黑暗模式,Theme.getMode()将返回auto,而不是Dark您可以设置模式
Theme.getMode()
auto
Dark
Theme.toggleMode();
或
Theme.setMode(Theme.Dark);
之后,Theme.getMode()将返回ns-dark或ns-light
ns-dark
ns-light
pbwdgjma2#
这是特定于Android的,适用于Nativescript 8(但也应该适用于7,因为它使用原生Android对象)
import { Utils } from '@nativescript/core' const context = Utils.android.getApplicationContext(); const flag = context.getResources().getConfiguration().uiMode & android.content.res.Configuration.UI_MODE_NIGHT_MASK; const isDarkMode = (flag === android.content.res.Configuration.UI_MODE_NIGHT_YES);
参考(安卓)-https://stackoverflow.com/a/69052759/7450160
2条答案
按热度按时间8wtpewkr1#
你什么意思
如何获得黑暗模式状态
Theme.getMode()
会告诉你它是自动、黑暗还是明亮模式。例如,如果我从我的手机启用了黑暗模式,Theme.getMode()
将返回auto
,而不是Dark
您可以设置模式
或
之后,
Theme.getMode()
将返回ns-dark
或ns-light
pbwdgjma2#
这是特定于Android的,适用于Nativescript 8(但也应该适用于7,因为它使用原生Android对象)
参考(安卓)-https://stackoverflow.com/a/69052759/7450160