Hul*_*llt 63 android android-fragments android-button onclicklistener
我尝试在片段之间进行导航.我有NewFragment.java新的片段工作了.我的问题是:
如何正确onClickListener运行NewFragment.java?
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(getActivity(), NewFragment.class);
startActivity(i);
}
});
Run Code Online (Sandbox Code Playgroud)
仅供参考:这是来自一个片段(我不知道这是否重要).
小智 120
在点击监听功能中添加以下代码,
NextFragment nextFrag= new NextFragment();
getActivity().getSupportFragmentManager().beginTransaction()
.replace(R.id.Layout_container, nextFrag, "findThisFragment")
.addToBackStack(null)
.commit();
Run Code Online (Sandbox Code Playgroud)
"findThisFragment"如果需要,可以使用该字符串稍后查找该片段.
这是@ Narendra代码的更多描述代码,
首先,您需要第二个片段的实例.那么你应该有FragmentManager和FragmentTransaction的对象.完整代码如下,
Fragment2 fragment2=new Fragment2();
FragmentManager fragmentManager=getActivity().getFragmentManager();
FragmentTransaction fragmentTransaction=fragmentManager.beginTransaction();
fragmentTransaction.replace(R.id.content_main,fragment2,"tag");
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
Run Code Online (Sandbox Code Playgroud)
希望这会奏效.有时你可能得到getSupportFragmentManager()而不是getFragmentManager().
用这个,
AppCompatActivity activity = (AppCompatActivity) view.getContext();
Fragment myFragment = new MyFragment();
activity.getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, myFragment).addToBackStack(null).commit();
Run Code Online (Sandbox Code Playgroud)
您应该在活动内创建一个函数来打开新片段并将活动引用传递给片段,并在片段内的某些事件上调用此函数。
| 归档时间: |
|
| 查看次数: |
102398 次 |
| 最近记录: |