Fragment之间参数的传递

使用Fragment的时候可能需要在两个Fragment之间进行参数的传递,开始想着可以使用SharedPreferences进行处理,想想这些简单的参数没有必要使用这么麻烦的方式去实现,翻了一下Fragment的API,找到一个方法就能实现像Activity一样便捷的实现参数传递 程序中的一段代码

    ft.hide(getActivity().getSupportFragmentManager().findFragmentByTag(“”));
                    SearchProjectFragment sf = new SearchProjectFragment();
                    Bundle bundle = new Bundle();
                    bundle.putString("key", Projsid);
                    sf.setArguments(bundle);
                    ft.add(R.id.fragmentRoot, sf, SEARCHPROJECT);
                    ft.addToBackStack(SEARCHPROJECT);
                    ft.commit();  

可以使用bundle进行参数传递,这样在两个Fragment跳转的时候就可以带上参数了,在另外一个Fragment获取参数的方式只需要一个语句String string = getArguments().getString("key");  key是自己定义的一个标识,参数的形式只要bundle能传递都可以实现

这个原理好像是和Activity是一样的。我这里传递的是一个关键字,从一个搜索Fragment页面跳转到两外一个结果查询的Fragment页面,在跳转的时候也可以加上一些动画的跳转效果

    ft.setCustomAnimations(R.anim.slide_in_right, R.anim.slide_out_left, R.anim.slide_in_left, R.anim.slide_out_right);  

时间: 2024-08-29 22:05:16

Fragment之间参数的传递的相关文章

struts2 action之间参数的传递

eg: 一个action 请求的参数,传递到 另一个 action 中. 访问请求: http://localhost:8080/strutsdemo1/user_index.action struts.xml 文件: TestAction.java 文件 UserAction.java 文件 page/index.jsp 页面: <h3>登录成功!</h3>   <s:property value="name"/>  会成功的 显示 name 属性

android中传递复杂参数,Activity之间通过Intent使用bundle,fragment之间和Activityty通过setArguments使用bundle

在Android开发中,Activity之间通过Intent使用bundle,fragment之间和Activityty通过setArguments使用bundle,对于一些简单的参数传递比较简单,而且方式也有多种,这个就不介绍了.在这里介绍一下复杂的参数传递,比如传递集合ArrayList,对象ArrayList<Object>. 无论是Activity之间参数传递,还是Fragment之间参数传递,或者是Activity与Fragment之间,都要使用Bundle,方式基本相同.Bundl

Fragment之间传递参数

传递参数的方法 //要跳转到的Fragment MapF f=new MapF(); //传递的参数 Bundle args = new Bundle(); args.putString("position","1"); f.setArguments(args); //跳转 getFragmentManager().beginTransaction().replace(R.id.car_main_fragment, f).commit(); 得到参数 getArgu

Fragment之间的参数的传递

1.Fragment直接也需要通过参数进行传递的. 在以下例子中,CrimeFragment需要将参数传递给FTwo,FTwo需要将改变后的新的参数传递给CrimeFragment 具体的实现方式如下图所示: 注意: 在FTwo中,一旦argument中的参数值改变的话,需要将最新的值设置到argument中,以防止设备旋转,重新绘制界面的时候导致取旧的数据

activity与fragment之间的传递数据

首先activity之间的数据传递就是 用intent和intent+bundle intent 传递 Intent i= new Intent(MainActivity.this,TheAty.class); i.putExtra("date","Hello SWWWWWW"); startActivity(i); 接受数据 Intent i =getIntent(); tv=(TextView) findViewById(R.id.tv); //通过"

两个Fragment之间如何传递数据

FragmentA启动FragmentB,做一些选择操作后,返回FragmentA,需要把FragmentB里面选择的数据传回来.有什么办法? Fragment之间不能直接通信,必须通过Activity来完成,具体步骤. 1. 在FragmentA中定义接口通信接口,通过该接口向Activity发送数据. public class FragmentA extends Fragment { private onButtonPressListener mListener; @Override pub

Android - fragment之间数据传递

<Fragment跳转时传递参数及结果回传的方法> <Fragment详解之五——Fragment间参数传递> <Android解惑 - 为什么要用Fragment.setArguments(Bundle bundle)来传递参数> <详解Dialog(三)——自定义对话框视图及参数传递> 原文地址:https://www.cnblogs.com/qlky/p/10630107.html

Android - Fragment (三)不同Fragment之间的通信

在Fragment的java文件中,可以使用getActivity()来获得调用它的activity, 然后再找到另一个Fragment,进行通信 getActivity().getFragmentManager().findFragmentById(R.id.fragment_list); 但这样做耦合度太高,不方便后续的修改操作 Fragment与其附着的Activity之间的通信,都应该由Activity来完成 不能是多个Fragment之间直接通信 Fragment与其附着的Activi

ASP.NET MVC3中Controller与View之间的数据传递总结

</pre>在ASP.NET MVC<span style="font-family:宋体">中,经常会在</span>Controller<span style="font-family:宋体">与</span>View<span style="font-family:宋体">之间传递数据,因此,熟练.灵活的掌握这两层之间的数据传递方法就非常重要.本文从两个方面进行探讨:&