我有这样的活动:
package com.nkdroID.daynighttheme;import androID.os.Bundle;import androID.support.v7.app.AppCompatActivity;import androID.support.v7.app.AppCompatDelegate;import androID.Widget.TextVIEw;public class ModeActivity extends AppCompatActivity { private TextVIEw txtModeType; int modeType; @OverrIDe protected voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.activity_auto_mode); txtModeType = (TextVIEw) findVIEwByID(R.ID.txtModeType); modeType = AppCompatDelegate.getDefaultNightmode(); if (modeType == AppCompatDelegate.MODE_NIGHT_auto) { txtModeType.setText("Default Mode: auto"); } else if (modeType == AppCompatDelegate.MODE_NIGHT_YES) { txtModeType.setText("Default Mode: Night"); } else if (modeType == AppCompatDelegate.MODE_NIGHT_NO) { txtModeType.setText("Default Mode: Day"); } }}`
如果默认模式设置为auto,是否可以获得当前激活的模式(白天或夜晚)?
解决方法:
您可以使用以下代码获取当前模式,
int currentNightmode = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;switch (currentNightmode) { case Configuration.UI_MODE_NIGHT_NO: // Night mode is not active, we're in day time case Configuration.UI_MODE_NIGHT_YES: // Night mode is active, we're at night! case Configuration.UI_MODE_NIGHT_UNdefineD: // We don't kNow what mode we're in, assume notnight}
Chris Banes的以下article很好地解释了它.
总结以上是内存溢出为你收集整理的android – 如果默认为auto,如何获取AppCompatDelegate当前模式全部内容,希望文章能够帮你解决android – 如果默认为auto,如何获取AppCompatDelegate当前模式所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)