Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何保存片段的状态_Java_Android_Hashmap_Fragment - Fatal编程技术网

Java 如何保存片段的状态

Java 如何保存片段的状态,java,android,hashmap,fragment,Java,Android,Hashmap,Fragment,我有多个片段,其中包含我想要保存的数据,并且能够从不同的片段进行访问 如果我只想保存一个特定片段的状态,我将如何保存 以下是我目前的导航方式: 片段“1” 片段“2” 我还尝试通过将值存储在散列图中,然后在暂停和恢复时使用来传递键来传递数据,但没有成功/ @Override public void onCreate(Bundle savedInstanceState) { ... if (savedInstanceState != null) { mContent

我有多个片段,其中包含我想要保存的数据,并且能够从不同的片段进行访问

如果我只想保存一个特定片段的状态,我将如何保存

以下是我目前的导航方式:

片段“1”

片段“2”

我还尝试通过将值存储在散列图中,然后在暂停和恢复时使用来传递键来传递数据,但没有成功/

@Override
public void onCreate(Bundle savedInstanceState) {
    ...
    if (savedInstanceState != null) {
        mContent = getSupportFragmentManager().getFragment(
                    savedInstanceState, "mContent");
    }
}

@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
getSupportFragmentManager().putFragment(outState, "mContent", mContent); 
}
switch(v.getId()){


case R.id.imageButton2:
    Fragment fragment;
    fragment = new Frag1();
    fragment.setArguments(fragment.getArguments());
    android.app.FragmentManager frgManager = getFragmentManager();
    frgManager.beginTransaction().replace(R.id.content_frame, fragment)
            .commit();  
    break;

case R.id.imageButton1:     
    fragment = new  LifeFrag3();
    android.app.FragmentManager frgManage = getFragmentManager();
    frgManage.beginTransaction().replace(R.id.content_frame, fragment)
            .commit();
    break;
@Override
public void onCreate(Bundle savedInstanceState) {
    ...
    if (savedInstanceState != null) {
        mContent = getSupportFragmentManager().getFragment(
                    savedInstanceState, "mContent");
    }
}

@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
getSupportFragmentManager().putFragment(outState, "mContent", mContent); 
}