下面的图像是我想要的
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();
}
});
答案 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
。