主Activity中加载(切换)多个fragment(也可以理解为activity跳转fragment)或主fragment中加载(切换)多个fragment
Activity布局中要有一个fragment布局空间,比如id名为main_ FrameLayout
写两个fragment类继承自fragment,比如
fragmentaextends Fragment (这个里面加载你的view和写你在这个fragment中的事件)
fragmentb extends Fragment(同理)
注意:view =inflater.inflate(R.layout. fragmenta_layout, container, false);这句话一定要紧挨在oncreatview方法下面!,不然报错你半天还找不到,我当时就是半天找不到!!
在主Activity的点击事件(触发事件)中比如你想点击A这个按钮加载fragmenta
执行下面代码
fragmenta fm1=new fragmenta ();
FragmentManagerFM = getSupportFragmentManager();
FM.beginTransaction().replace(R.id.main_FrameLayout, fm1).commit();
4) 按钮B.C等等同理,这样就可以实现在一个Activity页面加载不同的fragment,或者从一个Activity跳转到不同的fragment
1) Fragment到activity跳转即为普通intent跳转
2) 在当前fragment页面执行下面代码:
3) Intent intent = new Intent(getActivity(),MainActivity.class);
如果两个fragment依赖于一个Activity,比如壹的情况,则可以用切换的方法
@Override//核心代码
2 public void onClick(View v) {
3 //获取fragment的实例
4 Fragment fragment=new Fragment();
5 //获取Fragment的管理器
6 FragmentManager fragmentManager=getFragmentManager();
7 //开启fragment的事物,在这个对象里进行fragment的增删替换等操作。
8 FragmentTransaction ft=fragmentManager.beginTransaction();
9 //跳转到fragment,第一个参数为所要替换的位置id,第二个参数是替换后的fragment
10 ft.replace(R.layout.fragment1_layout,fragment);
11 //提交事物
12 ft.commit();
13 }
2) 如果两个fragment依赖于不同的activity,那就直接avticity跳转。
本文出自 “10055957” 博客,请务必保留此出处http://10065957.blog.51cto.com/10055957/1714453
安卓fragment跳转activity,fragment跳转fragment,activity跳转fragment
原文地址:http://10065957.blog.51cto.com/10055957/1714453