【发布时间】:2015-09-20 05:41:36
【问题描述】:
我试图仅在应用程序第一次启动时显示片段。我正在尝试显示片段,但它总是显示,我只希望它在首次启动时显示。
我在导航抽屉抽屉监听器(这可能是我的问题)中替换了一个名为displayView 的方法的片段,我试图在我的方法中使用布尔值和共享首选项。关于为什么这不起作用的任何想法
mDrawerLayout.setDrawerListener(mDrawerToggle);
if (savedInstanceState == null) {
// on first time display view for first nav item
firstTimeFrag();
}
}
private boolean firstTimeFrag(){
SharedPreferences pref = getPreferences(MODE_PRIVATE);
boolean ranBefore = pref.getBoolean("RanBefore",false);
if(!ranBefore){
SharedPreferences.Editor editor = pref.edit();
editor.commit();
Fragment fr = new ifFirstTimeFrag();
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.frame_container, fr);
fragmentTransaction.commit();
}else{
displayView(0);
}
return ranBefore;
}
【问题讨论】:
标签: android android-fragments boolean sharedpreferences