假设我有一个处理游戏的主片段,我使用setArguments将游戏板放入片段构建参数中,我需要在游戏第一次向用户显示时启动游戏板布局,任何其他时间,例如当他在按下主页或打电话后回到应用程序时,我不需要更换电路板。我可以通过在参数包中添加一些布尔值来轻松实现,在第一次将其设置为true并在启动布局之前检查它,但我想知道是否有另一种使用片段生命周期回调的方式?
答案 0 :(得分:0)
在父活动的onResume()中的onPause()和getRetainInstance()中尝试setRetainInstance(true),如下所示:
getSupportFragmentManager().findFragmentByTag("MyFragment")
.setRetainInstance(true);
getSupportFragmentManager().findFragmentByTag("MyFragment")
.getRetainInstance();
答案 1 :(得分:0)
你可以这样检查:
@Override
public void onCreate(Bundle savedInstanceState) {
if(savedInstanceState == null){
//firstTime
}
}
答案 2 :(得分:0)
好的,我认为这会有所帮助
首先设置SharedPreferences。
SharedPreferences pref = getActivity.getSharedPreferences(PREF_NAME, PRIVATE_MODE);
editor = pref.edit();
Editor editor.putBoolean(KEY, Val);
editor.commit();
获取值:
pref.getBoolean(KEY_IS_LOGGEDIN, false);