質問

アプリ全体を再起動せずにテーマを適用する方法は?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);が呼び出される前に設定できます。アクティビティを破棄してもう一度作成し、oncreate()setTheme(THEME);を再度作成する必要があります。

他のヒント

Intent i = getBaseContext().getPackageManager().getLaunchIntentForPackage( getBaseContext().getPackageName() );
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
.
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top