两个Fragment之间的跳转,和数据的传递
来源:互联网 发布:java math.ceil 编辑:程序博客网 时间:2024/05/16 11:11
作为一个android的菜鸟,前些天在做项目的时候用到了fragment,需求是从一个Fragment跳转到另一个Fragment,并且还要传递数据,就像Activity的跳转一样。在网上找了好久都没找到很好的列子,最后通过看别人的博客和查文档终于做好了,现在整理一下,希望能帮助有需要的童鞋。
1、首先在第一个Fragment 里面拿到FragmentManger 和FragmentTransaction 代码如下。
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
fm = getFragmentManager();
}
2 准备要传递的数据跳转。
deptListView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int postion,
long arg3) {
ft = fm.beginTransaction();//注意。一个transaction 只能commit一次,所以不要定义成全局变量
long id = adapter.getDepartments().get(postion).getId();
String name = adapter.getDepartments().get(postion).getName();
DeptDocFragment df = new DeptDocFragment();
Bundle bundle = new Bundle();
bundle.putLong("id", id);
bundle.putString("name", name);
df.setArguments(bundle);
ft.replace(R.id.guide_content, df);
ft.addToBackStack(null);
ft.commit();
}
});
上面的DeptDocFragment就是我要跳转的Fragment,而传递数据跟Activity一样,用Bundle,最后通过df.setArguments(bundle);携带数据。通过replace方法切换Fragment实现跳转,最后别忘了commit 提交。
3 接下来就是在另一个Fragment 中获取第一个Fragment 传递过来的数据。
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
Bundle bundle = getArguments();
deptId = bundle.getLong("id");
deptName = bundle.getString("name");
}
在Fragment的onCreate() 方法中获取数据。然后在这个Fragment中完成你需要的逻辑。好了,整个Fragment的跳转就算是完成了。希望对需要的童鞋有帮助。。。
- 两个Fragment之间的跳转,和数据的传递
- 两个Fragment之间的跳转,和数据的传递
- 两个Fragment之间的跳转,和数据的传递
- Fragment之间的跳转,和数据的传递
- Android中Fragment之间的跳转和数据的传递
- ViewPager + Fragment处理两个Fragment的点击跳转以及之间的传递数据
- ViewPager + Fragment处理两个Fragment的点击跳转以及之间的传递数据
- iOS两个APP之间的数据传递和跳转
- 两个Fragment之间的跳转
- fragment和activity之间的数据传递
- Fragment和Activity之间的数据传递
- Activity和Fragment之间的数据传递
- Activity 和 Fragment 之间的数据传递
- Fragment和Activity之间的数据传递
- 应用之间的跳转和数据传递
- Fragment和activity的之间的数据传递以及页面跳转
- Activity 和Fragment 两个之间的跳转方法
- Fragment之间的数据传递
- android ueventd 本地native部分源码分析
- OFBiz entity engine 关于数据库自增序列生成算法的源码解读
- float (**def)[10]这个是什么?
- Android中通过xml资源文件定义数组
- 黑马程序员-点语法,成员变量作用域,@property,@synthsize和 id
- 两个Fragment之间的跳转,和数据的传递
- C++习题 矩阵求和--重载运算符
- 太阳能热水器前十强
- android ormlite
- 纹理坐标
- 尝试 Jekyll 博客
- Oracle中replace函数的使用
- c# DataGridView动态添加新行的二个方法
- 【剑指offer】旋转数组的最小数字