2016-07-30 188 views
1

我創建了一個圖像按鈕,當按下按鈕時它將變成另一個圖像。但是,當我按下後退按鈕或切換到landscape方向時,圖像按鈕將返回到其默認圖像。如何在按下時保存圖像按鈕的狀態?

我認爲我需要保存圖像的狀態,當它被按下?

任何人都可以幫忙嗎?

ib1.setOnClickListener(new View.OnClickListener() { 
    public void onClick(View v) { 
     if(isPressed) 
      ib1.setBackgroundResource(R.drawable.star_pressed); 

     else 
      ib1.setBackgroundResource(R.drawable.star_unpressed); 
      isPressed = true; 
    } 
}); 
+0

使用選擇器! –

+0

您可以將狀態保存到SharedPreferences,然後在onResume方法中,您可以加載狀態並設置背景 – Thomas

+0

[Android:使用選擇器爲圖像視圖設置背景顏色]的可能重複(http://stackoverflow.com/questions/8800343/android-using-selector-to-set-background-color-for-image-view) –

回答

0

這樣做對方向改變

<activity android:name=".Youractivity" 

     android:configChanges="orientation|keyboard|keyboardHidden|screenSize" 
    > 

    </activity> 
+0

對於你的後退...你做什麼請張貼代碼...在壓抑你所做的事情上 –

0

添加婁代碼清單檔案中的

<activity 
     android:name="YourActivity" 
     android:configChanges="orientation|screenSize|keyboardHidden" 
     android:theme="@style/AppTheme.NoActionBar" //if you need 
     android:windowSoftInputMode="stateHidden" //if you need 
/> 
0

你可以把按鈕狀態sharedpreferences並在onResume方法獲得按鈕狀態活動。