我的第一个布局中有一个按钮,我希望当用户点击它时,它会显示另一个活动,然后从不显示第一个活动。
我试过了:
Boolean isFirstRun = getSharedPreferences("PREFERENCE", MODE_PRIVATE)
.getBoolean("isFirstRun", true);
if (isFirstRun) {
//show start activity
startActivity(new Intent(MainActivity.this, FirstLaunch.class));
Toast.makeText(MainActivity.this, "First Run", Toast.LENGTH_LONG)
.show();
}
getSharedPreferences("PREFERENCE", MODE_PRIVATE).edit()
.putBoolean("isFirstRun", false).commit();
答案 0 :(得分:3)
我怀疑,因为它可能无法点击getSharedPreferences()
行,而只是导航到您的新活动FirstLaunch
。
所以我认为它应该是,
if (isFirstRun) {
//show start activity
getSharedPreferences("PREFERENCE", MODE_PRIVATE).edit()
.putBoolean("isFirstRun", false).commit();
startActivity(new Intent(MainActivity.this, FirstLaunch.class));
Toast.makeText(MainActivity.this, "First Run", Toast.LENGTH_LONG)
.show();
}
基本上,在导航到FirstLaunch
活动之前,您必须在SharedPreferences中保存isFirstRun
的状态。