主题以编程方式设置.如何重新加载要应用的活动

Lea*_*ros 6 xml android themes styles actionbarsherlock

如何在不重新启动整个应用程序的情况下应用主题?如果我使用startActivity(getIntent()); finish();Activity退出并且不重启.是否可以简单地重新启动/重新创建活动以应用主题?

Dan*_*nte 16

它的顺序不正确.

    finish();
    intent = new Intent(this, <your_activity>.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

这是正确的顺序.

主题可以在super.onCreate(savedInstanceState);被调用之前设置.您需要销毁活动并再次创建它并立即setTheme(THEME);在onCreate()中调用