我是android编程的菜鸟。我有一个小问题。当我单击 ImageView 时,我使该 ImageView 不可见并将 Button 设置为可见。我的问题是你如何保存这个?例如,我单击 ImageView,Button 出现,而 ImageView 消失。然后我退出应用程序并重新进入相同的活动,我希望该按钮保留在那里。我该怎么做呢?
谢谢!
我是android编程的菜鸟。我有一个小问题。当我单击 ImageView 时,我使该 ImageView 不可见并将 Button 设置为可见。我的问题是你如何保存这个?例如,我单击 ImageView,Button 出现,而 ImageView 消失。然后我退出应用程序并重新进入相同的活动,我希望该按钮保留在那里。我该怎么做呢?
谢谢!
使用SharedPreferences
. 这是一个关于如何使用它们的好教程。例子
但基本上你可以通过将此代码添加到你的Activity
private boolean isVisible;
@Override
public void onCreate(Bundle myBundle){
super.onCreate(myBundle);
isVisible = getPreferences(MODE_PRIVATE).getBoolean("visible", true);
.... your code
if (isVisible){
// show ImageView
} else {
//don't
}
}
}
public void onPause(){
if(isFinishing()){
getPreferences(MODE_PRIVATE)
.edit().
putBoolean("visible", isVisible).commit();
}
}
使用共享首选项来保存状态,即在您的情况下说一个布尔值来指示当您退出应用程序时 imageview 是否可见。
当您启动应用程序时,使用此值并相应地执行操作。
对于共享首选项的使用,
如何在 Android 中使用 SharedPreferences 来存储、获取和编辑值
当您离开应用程序onPause()
或单击事件时,您可以将状态存储在共享首选项中,并且可以onCreate()
从该首选项中获取返回方法的结果
将数据存储在共享首选项中(在 OnPause() 或单击事件中):
SharedPreferences prefs = getSharedPreferences("yourPrefName", MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
// save values
editor.putBoolean("isButtonVisible", true);
editor.commit();
从 sharedPrefs 获取数据(在 onCreate() 中):
SharedPreferences prefs = getSharedPreferences("yourPrefName", MODE_PRIVATE);
boolean btnstatus = prefs.getBoolean(Constants.IS_LOGIN, false);
if (btnstatus) {
//put the code to show button and hide imageview
}