Android中如何使用Activity和Fragment传递数据
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,本篇内容介绍了"Android中如何使用Activity和Fragment传递数据"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望
千家信息网最后更新 2025年02月04日Android中如何使用Activity和Fragment传递数据
本篇内容介绍了"Android中如何使用Activity和Fragment传递数据"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
1、第一种方式,也是最常用的方式,就是使用Bundle来传递参数
MyFragment myFragment = new MyFragment(); Bundle bundle = new Bundle(); bundle.putString("DATA",values);//这里的values就是我们要传的值 myFragment.setArguments(bundle);
然后在Fragment中的onCreatView方法中,通过getArgments()方法,获取到bundle对象,然后通过getString的key值拿到我们传递过来的值。
2、第二种方式,是在宿主Activity中定义方法,将要传递的值传递到Fragment中,在Fragment中的onAttach方法中,获取到这个值。
//宿主activity中的getTitles()方法public String getTitles(){ return "hello";}//Fragment中的onAttach方法 @Override public void onAttach(Activity activity) { super.onAttach(activity); titles = ((MainActivity) activity).getTitles(); }//通过强转成宿主activity,就可以获取到传递过来的数据
3、下面在扩展一下创建Fragment和传递数值
如果我们不需要传递数值,那就直接可以在宿主activity中,跟平常一样创建fragment,但是如果我们需要传递数据的话,可以使用newInstance(数据)方法来传递,这个方法是自己定义的,但是是定义在Fragment中的一个静态方法。
static MyFragment newInstance(String s){ MyFragment myFragment = new MyFragment(); Bundle bundle = new Bundle(); bundle.putString("DATA",s); myFragment.setArguments(bundle); return myFragment; }//同样,在onCreatView中直接获取这个值 @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.layout_fragment,container,false); Bundle bundle = getArguments(); String data = bundle.getString("DATA"); tv = (TextView) view.findViewById(R.id.id_fm_tv); if(data != null){ tv.setText(data); } return view; }
在宿主activity中,创建Fragment
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); fragmentTransaction.setCustomAnimations(android.R.anim.fade_in,android.R.anim.fade_out); fragment1 = MyFragment.newInstance("这是第一个fragment");//这里只需要直接调用这个方法,就创建了一个fragment fragment2 = MyFragment.newInstance("这是第二个fragment"); fragment3 = MyFragment.newInstance("这是第三个fragment");
"Android中如何使用Activity和Fragment传递数据"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
方法
数据
宿主
方式
这是
内容
就是
数值
更多
知识
实用
平常
学有所成
接下来
三个
参数
困境
实际
对象
常用
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全处理过程在评估基础
互联网公司的数据库
山东科技工业互联网
江门无限软件开发批发价
部队 网络安全教育教案
前段 后端 服务器
奇安信助力金融网络安全
星火云服务器
服务器的使用寿命
在哪里下载sql数据库
咸阳网络技术参数
软件开发人员技术背景
网络安全法 管理问题
论文四大数据库整顿
宝山区威力网络技术要多少钱
公安局网络安全监察举报网站
北京通奥达网络技术有限公司
洛阳帝都网络技术
顺丰服务器是用谁家的
比较火的软件开发
服务器管理员用什么软件
哈尔市有名的软件开发公司
网络安全专业应该考什么证书
服务器主板架构
visual 设计数据库
苏州园林课件软件开发
楚雄州网络安全培训
csgo捆绑专用服务器失败
大华门禁一体机连接服务器
一个数据库表太大