赞
踩
今天在写项目的时候遇到fragment于fragment之间的传值,经过一个小时的调试终于调试通了,记录下来。
- //目标fragment
- InfoFragment fragment = new InfoFragment();
- //这里需要注意一下:getChildFragmentManager所得到的是在fragment里面子容器的管理器 getFragmentManager()直接获取FragmentManager
- FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
- //存放fragment的activity主布局
- transaction.add(R.id.ll_mainInfoFragment,fragment);
- Bundle bundle = new Bundle();
- bundle.putString("tvImei",windowInfo.getResult().getImei());
- bundle.putString("tvEquipmentName", windowInfo.getResult().getName());
- bundle.putString("tvSpeed", windowInfo.getResult().getAtime());
- bundle.putString("tvTime", windowInfo.getResult().getGpstime());
- bundle.putString("tvStatic", windowInfo.getResult().getLasttime());
- bundle.putString("tvAddress", street);
- //设置数据
- fragment.setArguments(bundle);
- //提交事务
- transaction.commit();

- //在目标fragment页面取出数据
- Bundle bundle = getArguments();
- if (bundle != null) {
- String tvImei = bundle.getString("tvImei");
- String tvEquipmentName = bundle.getString("tvEquipmentName");
- String tvSpeed = bundle.getString("tvSpeed");
- String tvTime = bundle.getString("tvTime");
- String tvStatic = bundle.getString("tvStatic");
- String tvAddress = bundle.getString("tvAddress");
- }
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。