Android 单击“打开活动”按钮上的“片段”用片段加载它
下面的图片是我想要的 MainActivity有一个片段,其中有3个按钮 单击按钮,容器应加载特定片段 ContainerActivity应该加载片段 我创造了三个片段 学习片段,数学片段,科学片段 我试过下面的代码,但不起作用Android 单击“打开活动”按钮上的“片段”用片段加载它,android,android-fragments,Android,Android Fragments,下面的图片是我想要的 MainActivity有一个片段,其中有3个按钮 单击按钮,容器应加载特定片段 ContainerActivity应该加载片段 我创造了三个片段 学习片段,数学片段,科学片段 我试过下面的代码,但不起作用 View view = inflater.inflate(R.layout.fragment_first, container, false); Button btn = (Button)view.findViewById(R.id.button1); btn.setO
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();
}
});
它实际上与图片中显示的概念不匹配,但要做到这一点,请按如下方式处理按钮:
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
}
});
然后,在容器类活动中,显示片段:
请注意,它应该放在onCreate方法中以显示片段。尝试删除this:First.this.getActivity并将其替换为:getActivity。另外,您是否要求在单击按钮时显示多个片段和活动?因为您的代码显示,当单击按钮时,它应该转到容器类,然后替换一个片段!!代码与概念并不完全匹配,因为概念本身已经为Activity&Fragment类使用了混乱的名称。最有可能的意图应该是intentmainactive.this,ContainerActivity.class;通过一束额外的意图,你可以膨胀相应的碎片。可以提供提示,但不会做作业。但在特定按钮上单击它将不会显示我所需的部分
Second second = new Second();
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.cont, second).addToBackStack(null).commit();