我试图创建一个欢迎屏幕。我的问题是,每当我重新打开应用程序时,它再次运行onCreate函数(下面的代码)并重新初始化变量,就好像它是第一次再次。我试图使用具有共享首选项的计数器但是得到相同的结果。我的想法是我的应用程序将在第一次加载时运行Oncreate方法,然后创建一个名为firstBoot = true的布尔值。然后将更改为false,但是如果布尔值不存在,我怎么能测试它是否为false然而?任何帮助将不胜感激。
(在onCreate方法内)
final String PREFS_NAME = "MyPrefsFile";
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
if (settings.getBoolean("my_first_time", true)) {
//the app is being launched for first time, do something
Log.d("Comments", "First time");
// first time task
setContentView(R.layout.setup);
// record the fact that the app has been started at least once
settings.edit().putBoolean("my_first_time", false).commit();
}
else
{
setContentView(R.layout.test);
}
答案 0 :(得分:2)
此代码将帮助您获得所需
SharedPreferences prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE);
SharedPreferences.Editor editor = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE).edit();
int count = prefs.getInt("count", 0);
count++;
editor.putInt("count", count);
editor.commit();
if(count==1)
{ welcome screen code
}
else
{ your code
}