Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/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 返回上一个片段(setOnClickListener)不工作_Android_Android Fragments - Fatal编程技术网

Android 返回上一个片段(setOnClickListener)不工作

Android 返回上一个片段(setOnClickListener)不工作,android,android-fragments,Android,Android Fragments,Ysd我在这里发布了一篇帖子,但似乎并没有解决我的问题。我也在stackoverflow中寻找类似的帖子,但它对我来说并不适用。在这篇文章中,我想我必须详细解释我想要实现的目标 基本上,我在一个活动中有两个片段。从下面的屏幕截图中,当用户输入sth并单击片段1中的按钮时,它将到达片段2 我想做的是,在片段2中,当用户单击左上角的后退按钮或按下设备后退按钮时,它将返回到上一个片段(片段1)。 two.java public class two extends Fragment{ TextView

Ysd我在这里发布了一篇帖子,但似乎并没有解决我的问题。我也在stackoverflow中寻找类似的帖子,但它对我来说并不适用。在这篇文章中,我想我必须详细解释我想要实现的目标

基本上,我在一个活动中有两个片段。从下面的屏幕截图中,当用户输入sth并单击片段1中的按钮时,它将到达片段2

我想做的是,在片段2中,当用户单击左上角的后退按钮或按下设备后退按钮时,它将返回到上一个片段(片段1)。

two.java

public class two extends Fragment{
TextView get_display_input;
ImageView get_back_button;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    return inflater.inflate(R.layout.fragment_two, container, false);
}

public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);

    get_display_input=(TextView)getActivity().findViewById(R.id.display_input);
    get_back_button=(ImageView) getActivity().findViewById(R.id.back_button);
    Bundle bundle = getArguments();
    String get_name = bundle.getString("input_name_value");
    get_display_input.setText("You have entered "+get_name);

    get_back_button.setOnClickListener(new View.OnClickListener(){

        public void onClick(View v){

            FragmentManager manager=getFragmentManager();
            FragmentTransaction transaction=manager.beginTransaction();
            getFragmentManager().popBackStackImmediate();
            transaction.commit();

        }
    });
}
}
上面的编码是片段2。当我尝试使用

getFragmentManager().popBackStackImmediate();
getActivity().getFragmentManager().popBackStack(); 

它不起作用。。请帮忙

我想它应该对你有所帮助,看看这个链接:我可以替换片段,点击按钮将返回片段1。但当我点击设备返回按钮时,它将退出活动,但不会返回到以前的片段。请显示您添加片段的代码。我认为这应该会对您有所帮助,请查看此链接:我可以替换片段,单击按钮将返回片段1。但当我点击设备返回按钮时,它将退出活动,但不会返回到以前的片段。请显示您添加片段的代码。