按钮上的片段单击“打开活动”用片段

时间:2018-09-17 18:57:34

标签: android android-fragments

下面的图像是我想要的

enter image description here

  

MainActivity有一个片段,其中有3个按钮。

     

单击按钮时,容器应加载特定的片段

     

ContainerActivity应该加载Fragment

     

我创建了三个片段   学习片段,数学片段,科学片段

我尝试了下面的代码,但是没有用。

View view = inflater.inflate(R.layout.fragment_first, container, false);
Button btn = (Button)view.findViewById(R.id.button1);
btn.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {

        Intent intent = new Intent(First.this.getActivity(),Container.class);
        startActivity(intent);

        Second second = new Second();
        FragmentTransaction transaction = getFragmentManager().beginTransaction();
        transaction.replace(R.id.cont,second).addToBackStack(null).commit();
    }
});

1 个答案:

答案 0 :(得分:0)

它实际上与您在图片中显示的概念不匹配,但是要这样做,请像这样处理Button

Button btn = (Button)view.findViewById(R.id.button1);
btn.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {

        Intent intent = new Intent(getActivity(), Container.class);
        startActivity(intent);
        // First go to container class-Activity

    }
});

然后,在容器类Activity中显示Fragment

Second second = new Second();
        FragmentTransaction transaction = getFragmentManager().beginTransaction();
        transaction.replace(R.id.cont, second).addToBackStack(null).commit();

请注意,应将其放在onCreate()方法内以显示Fragment