android fragment传递参数_fragment之间传值的两种方法
2016-05-06 15:12
651 查看
在Activity中加载Fragment的时候、有时候要使用多个Fragment切换、并传值到另外一个Fragment、也就是说两个Fragment之间进行参数的传递、查了很多资料、找到两种方法、一种是通过共同的Activity传递、这种方法是在Activity里面添加一个字段、来临时保存要一些值
翻了一下Fragment的API、找到了另外一个方法来传递、就像Activity一样便捷的实现参数传递程序中的一段代码、是通过Bundle来传递的、相比之下第一种方法要简单一点
Fragment调用方法、需要注意的是在设值的时候要进行强转一下
在另外一个Fragment获取参数的方式只需要一个语句、key是自己定义的一个标识、参数的形式只要bundle能传递都可以实现
ANDROID FRAGMENT传递参数_FRAGMENT之间传值的两种方法
Android
dwtedx
5
63164
在Activity中加载Fragment的时候、有时候要使用多个Fragment切换、并传值到另外一个Fragment、也就是说两个Fragment之间进行参数的传递、查了很多资料、找到两种方法、一种是通过共同的Activity传递、这种方法是在Activity里面添加一个字段、来临时保存要一些值
翻了一下Fragment的API、找到了另外一个方法来传递、就像Activity一样便捷的实现参数传递程序中的一段代码、是通过Bundle来传递的、相比之下第一种方法要简单一点
Fragment调用方法、需要注意的是在设值的时候要进行强转一下
在另外一个Fragment获取参数的方式只需要一个语句、key是自己定义的一个标识、参数的形式只要bundle能传递都可以实现
总结
从上面两种方法看来、方法一要简单一些、但个人觉得有点投机取巧、不过也很合Java的开发规范、如果是同一个Activity中要加载很多Fragment的话、这种方法无疑要简单很多
而方法二是使用了Android的Bundle传递的、这种方法应该更官方一点吧、不过在项目开发中、怎么实现简单就怎么来、也没太多关系
翻了一下Fragment的API、找到了另外一个方法来传递、就像Activity一样便捷的实现参数传递程序中的一段代码、是通过Bundle来传递的、相比之下第一种方法要简单一点
FRAGMENT参数传递方法一
在Activity中定义一个字段、然后添加set和get方法、代码如下、mTitle就是要传递的参数、如果是传递对象、可以把mTitle换成一个对象即可public class DemoActivity { private String mTitle; public String getmTitle() { return mTitle; } public void setmTitle(String title) { this.mTitle = title; } }
Fragment调用方法、需要注意的是在设值的时候要进行强转一下
((DemoActivity)getActivity()).getmTitle();
FRAGMENT参数传递方法二
可以使用bundle进行参数传递、这样在两个Fragment跳转的时候就可以带上参数了、同样也可以传递一个复杂的对象ft.hide(getActivity().getSupportFragmentManager().findFragmentByTag("")); DemoFragment demoFragment = new DemoFragment(); Bundle bundle = new Bundle(); bundle.putString("key", "这是方法二"); demoFragment.setArguments(bundle); ft.add(R.id.fragmentRoot, demoFragment, SEARCHPROJECT); ft.commit();
在另外一个Fragment获取参数的方式只需要一个语句、key是自己定义的一个标识、参数的形式只要bundle能传递都可以实现
String string = getArguments().getString("key");
ANDROID FRAGMENT传递参数_FRAGMENT之间传值的两种方法
2014-11-22 14:49:02 By: dwtedx
Androiddwtedx
5
63164
在Activity中加载Fragment的时候、有时候要使用多个Fragment切换、并传值到另外一个Fragment、也就是说两个Fragment之间进行参数的传递、查了很多资料、找到两种方法、一种是通过共同的Activity传递、这种方法是在Activity里面添加一个字段、来临时保存要一些值
翻了一下Fragment的API、找到了另外一个方法来传递、就像Activity一样便捷的实现参数传递程序中的一段代码、是通过Bundle来传递的、相比之下第一种方法要简单一点
FRAGMENT参数传递方法一
在Activity中定义一个字段、然后添加set和get方法、代码如下、mTitle就是要传递的参数、如果是传递对象、可以把mTitle换成一个对象即可publicclassDemoActivity{privateString mTitle;publicString getmTitle(){return mTitle;}publicvoid setmTitle(String title){this.mTitle = title;}}
Fragment调用方法、需要注意的是在设值的时候要进行强转一下
((DemoActivity)getActivity()).getmTitle();
FRAGMENT参数传递方法二
可以使用bundle进行参数传递、这样在两个Fragment跳转的时候就可以带上参数了、同样也可以传递一个复杂的对象ft.hide(getActivity().getSupportFragmentManager().findFragmentByTag(""));DemoFragment demoFragment =newDemoFragment();Bundle bundle =newBundle(); bundle.putString("key","这是方法二"); demoFragment.setArguments(bundle); ft.add(R.id.fragmentRoot, demoFragment, SEARCHPROJECT); ft.commit();
在另外一个Fragment获取参数的方式只需要一个语句、key是自己定义的一个标识、参数的形式只要bundle能传递都可以实现
String string = getArguments().getString("key");
总结
从上面两种方法看来、方法一要简单一些、但个人觉得有点投机取巧、不过也很合Java的开发规范、如果是同一个Activity中要加载很多Fragment的话、这种方法无疑要简单很多
而方法二是使用了Android的Bundle传递的、这种方法应该更官方一点吧、不过在项目开发中、怎么实现简单就怎么来、也没太多关系
相关文章推荐
- Android LED控制
- Android TTS (二)
- Android 自定义 HorizontalScrollView 打造再多图片(控件)也不怕 OOM 的横向滑动效果
- 单行文本,在内容较多的时候,实现左右滑动的方案
- Android Studio 快捷键
- Android 自定义RecyclerView 实现真正的Gallery效果
- Android NDK之JNI陷阱
- android学习,通过监听焦点,来进行类似监听软键盘弹出隐藏的功能
- 深入解读Android的Volley库的功能结构
- Android LayoutInflater深度解析 给你带来全新的认识
- Android Parcelable
- androidstudio连接夜神模拟器
- android 之 PowerManager 与电源管理
- [Android]ListView美化:去阴影、底色、选中色
- Android开发笔记(九十七)图片的特效处理
- Android调用系统拍照,录音,摄像
- Android 在代码中控制View的填充方式和宽度、高度
- Android 手把手教您自定义ViewGroup(一)
- android 画虚线、实线,画圆角矩形,一半圆角
- Android MaterialSheetFab