簡體   English   中英

如何在運行時將黑色主題更改為白色主題?

[英]How to change Black Theme to White Theme in runtime?

我需要知道如何通過按兩個按鈕在應用程序的所有活動中將blackTheme更改為白色主題(光主題),一個用於黑色主題,另一個用於白色主題。 我知道如何在清單中設置主題並在OnCreate方法上設置主題...但是要動態更改我不知道!! =(

有人可以幫幫我嗎?

obs:我知道如何改變(在運行中)我的應用程序按鈕的顏色......除非背景!

我想你是通過在onCreate()回調方法中的setContentView()之前調用setTheme()來設置主題。 如果你在setContentView() setTheme()之后調用setTheme() ,你將不得不重新啟動活動..我在運行時沒有經驗更改主題...但無論如何,我可以想到類似的東西:

public void onCreate(Bundle savedInstanceState) {
    int theme = getIntent().getIntExtra("theme", <INSERT DEFAULT THEME.. MAYBE FROM PREFS>);
    setTheme(theme);

    super.onCreate(savedInstanceState);
    setContentView(R.layout.notes_list)
}

“light-theme”按鈕使用存儲在intent中的新主題值重新啟動活動:

public void onClickLightButton(View view) {
    finish(); 
    Intent i = getIntent();
    i.putExtra("theme", android.R.style.Theme_Light);
    startActivity(i);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM