Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/201.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/0/search/2.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
Android 从片段切换到活动并返回片段_Android_Android Activity - Fatal编程技术网

Android 从片段切换到活动并返回片段

Android 从片段切换到活动并返回片段,android,android-activity,Android,Android Activity,我创建了一个包含5个片段的活动,其中一个片段包含一个配置文件页面,我创建了另一个活动来编辑配置文件页面,但当我单击保存按钮返回编辑(片段)时。应用程序崩溃了。。 我需要帮助或建议 下面是我的片段代码: public class MeFragment extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInst

我创建了一个包含5个片段的活动,其中一个片段包含一个配置文件页面,我创建了另一个活动来编辑配置文件页面,但当我单击保存按钮返回编辑(片段)时。应用程序崩溃了。。 我需要帮助或建议

下面是我的片段代码:

public class MeFragment extends Fragment {

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    View view = inflater.inflate(R.layout.me, container, false);

    Button bt = (Button) view.findViewById(R.id.btedit);
    bt.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

            Intent i = new Intent(getActivity(), Editme.class);
            startActivity(i);
        }
    });

    return view;
}
这是Editme类:

Button btnLoad = (Button) findViewById(R.id.btsave);
OnClickListener listener = new OnClickListener() {

        @Override
        public void onClick(View v) {
            FragmentManager fragmentManager = getFragmentManager();

            FragmentTransaction fragmentTransaction = fragmentManager
                    .beginTransaction();
            MeFragment save = new MeFragment();
            fragmentTransaction.add(R.id.fragment_content, save);
            fragmentTransaction.commit();

        }
    };

    btnLoad.setOnClickListener(listener);

如果您打开了另一个活动,并且在做了一些更改之后,您希望返回到上一个活动(有5个片段),只需调用finish方法,而不是执行片段事务

OnClickListener listener = new OnClickListener() {
        @Override 
        public void onClick(View v) { 
           finish();
        }
}

向我们显示您的stacktrace。您试图请求另一个活动或编辑活动的托管FragmentManager。这行不通。首先关闭活动,然后切换片段。或者首先使用ActivityForResult。我想回到我切换的片段,因为我必须将数据从该活动传递到片段。例如图像和两个文本视图。因此,如果您能给我一个可能有效的代码,请大家帮助我您可以始终使用startActivity startActivityOnResult代替startActivityOnResult,然后返回到第一个活动后,将调用ActivityResult,您可以在其中选择合适的片段。但我不确定在onActivityResult期间是否允许对片段事务使用提交。因此,您可能需要使用commitAllowingStateLoss