私の英語は非常に悪いので、私はロシア人です。:)
私のアプリケーションではSharedPreferences
、値を保存するために使用します。データはSharedPreferences
、アプリケーションの実行中および終了後に に保存されます。デバイスを再起動するまで、すべて正常に動作します。再起動後は使用できずSharedPreferences
、アプリケーションはそこからデータを読み書きしません。関数を使用してgetPreferences(0)
、アプリケーション データ フォルダーから設定を取得します。も使用してみましたgetSharedPreferences(myPref, MODE_PRIVATE)
が、効果は同じです。デバイスの再起動後のデータクリーニングアプリケーション - 1 つのソリューションのみを保存します。
favoriteButton = (ImageView) findViewById(R.id.favorite_button);
SharedPreferences favorite = getSharedPreferences("Favorites", MODE_PRIVATE);
if(favorite.getString(""+Loader.currentVideo.getTitle()+"", "") == "true") {
favoriteButton.setImageDrawable(getResources().getDrawable(R.drawable.fav_selected));
} else {
favoriteButton.setImageDrawable(getResources().getDrawable(R.drawable.fav_empty));
}
favoriteButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
SharedPreferences favorite = getSharedPreferences("Favorites", MODE_PRIVATE);
SharedPreferences.Editor editor = favorite.edit();
if(favorite.getString(""+Loader.currentVideo.getTitle()+"", "") == "true") {
favoriteButton.setImageDrawable(getResources().getDrawable(R.drawable.fav_empty));
Loader.favoriteVideos.remove(Loader.currentVideo);
editor.remove(""+Loader.currentVideo.getTitle()+"");
} else {
favoriteButton.setImageDrawable(getResources().getDrawable(R.drawable.fav_selected));
Loader.favoriteVideos.add(Loader.currentVideo);
editor.putString(""+Loader.currentVideo.getTitle()+"", "true");
}
editor.commit();
}
});