主题以编程方式设置。如何重新加载要应用的活动
-
12-11-2019 - |
题
如何在不重新启动整个应用程序的情况下应用主题?如果我这样做 startActivity(getIntent()); finish();
活动退出,不重新启动。是否可以简单地重新启动/重新创建活动以应用主题?
解决方案
它的顺序不正确。
finish();
intent = new Intent(this, <your_activity>.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
这是正确的顺序。
主题可以设置之前 super.onCreate(savedInstanceState);
正在被召唤。您需要销毁活动并再次创建它并立即调用 setTheme(THEME);
在onCreate()
其他提示
Intent i = getBaseContext().getPackageManager().getLaunchIntentForPackage( getBaseContext().getPackageName() );
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
不隶属于 StackOverflow