0
我正在嘗試創建一個允許用戶選擇背景顏色的選項。但是,當用戶選擇一個選項時,它默認爲綠色。如果我卸載應用程序,背景顏色默認爲綠色。如果我刪除選項綠色,它默認爲上面的顏色(藍色)。我無法弄清楚我錯在哪裏。任何建議將不勝感激。選擇樣式的選項始終默認爲最後樣式選項
public class UserMenu extends Activity implements OnClickListener {
Button preview;
Spinner spinnerColor;
SharedPreferences preferences;
public static String theme = "Blue";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
preferences = getSharedPreferences("StylePref", 0);
theme = preferences.getString("THEME", "Red");
if(theme.equals("Red"));
{
setTheme(R.style.Theme_Red);
}
if(theme.equals("Blue"));
{
setTheme(R.style.Theme_Blue);
}
if(theme.equals("Green"));
{
setTheme(R.style.Theme_Green);
}
setContentView(R.layout.activity_user_menu);
System.out.println(theme);
spinnerColor = (Spinner) findViewById(R.id.spinnerColorMenu);
preview = (Button)findViewById(R.id.previewButton);
preview.setOnClickListener(this);
}
public void onClick(View v)
{
SharedPreferences.Editor preferencesEditor = preferences.edit();
String bgColor = spinnerColor.getSelectedItem().toString();
preferencesEditor.putString("THEME", bgColor);
preferencesEditor.commit();
if(bgColor.equals("Red"))
{
//Intent intent = getIntent();
//intent.putExtra("Theme", "Red");
finish();
//startActivity(intent);
}
else if(bgColor.equals("Blue"))
{
Intent intent = getIntent();
//intent.putExtra("Theme", "Blue");
finish();
startActivity(intent);
}
else if(bgColor.equals("Green"))
{
Intent intent = getIntent();
//intent.putExtra("Theme", "Green");
finish();
startActivity(intent);
}
}
}
天啊,謝謝。我不相信我錯過了這一點。乾杯 – Calgar99