先週から、保存された設定に関する奇妙な問題に直面しています。
私はアンドロイド互換のボードに取り組んでいます。
私が直面している実際の問題は、
4 つのボタンがあり、ボタンをクリックすると、ボタンの背景画像が変更されます
Onfirstclick - >ボタンの背景画像を強調表示に変更 - > 2回目のクリック - >通常の背景画像に変更し、最初の実行では通常の背景ボタン画像を保持しています
しかし、共有設定を使用しているにもかかわらず、再起動時にボタンの背景画像が作業ボードに保存されません。
ボードを再起動するためのオン/オフ用の電源ボタンがあります。
ボードを再起動した後に取得する必要があるその画像をonclickに持っている画像(通常/強調表示)
良いことは、
the code is working perfectly in android mobile but not in my board
これは私のコードです。
どんな助けでも大歓迎です。
public class SharedprefsActivity extends Activity {
protected static final String TAG = "HvacActivity";
/** Called when the activity is first created. */
private Button seatdirnbtn;
private SharedPreferences prefs;
private String prefName = "MyPref";
private SharedPreferences.Editor editor;
private boolean isclick;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
seatdirnbtn = (Button) findViewById(R.id.seatdirnbtn);
seatdirnbtn.setOnClickListener(listner1);
}
public void onResume() {
super.onResume();
getPrefAndButtonState();
}
public void onPause() {
super.onPause();
setPrefAndButtonState();
}
@Override
public void onRestart() {
super.onRestart();
getPrefAndButtonState();
}
@Override
public void onStop() {
super.onStop();
setPrefAndButtonState();
}
public void getPrefAndButtonState(){
prefs = this.getSharedPreferences(prefName, MODE_PRIVATE);
isclick = prefs.getBoolean("prefName", false);
System.out.println("bool? " + isclick);
if (isclick) {
seatdirnbtn.setBackgroundResource(R.drawable.icon4hlt);
} else if (!isclick) {
seatdirnbtn.setBackgroundResource(R.drawable.icon4);
}
}
public void setPrefAndButtonState(){
editor = prefs.edit();
editor.putBoolean("prefName", isclick);
editor.commit();
getPrefAndButtonState();
}
private View.OnClickListener listner1 = new View.OnClickListener() {
public void onClick(View v) {
if (isclick) {
isclick = false;
setPrefAndButtonState();
} else if (!isclick) {
isclick = true;
setPrefAndButtonState();
}
}
};
}