继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

对于Activity如何向ViewPager中的Fragment传值

韩默思
关注TA
已关注
手记 2
粉丝 10
获赞 12

如果局限于传值,使用EventBus(百度可以得到)来进行传值就可以了,优点:简单易用,不像Activity向Fragment传值的方法那样繁琐,同时避免了Activity向ViewPager中的Fragment传值的各种报错(对于初学者而言)。但是,对于这种方法,就我个人而言,有点不太实用。然后请教我朋友,换了一个角度思考,其实如果我们想要用到Activity中的某些数据,比如学号信息,这时我们并不需要进行传值,将数据保存就可以了。这时我们可以用最简单的方法来进行保存:
//使用SharedPreferences保存数据
//1.获取SharedPreferences对象
SharedPreferences mSharedPreferences=getSharedPreferences("name",MainActivity.MODE_PRIVATE);
//2.获取SharedPreferences.Editor对象
SharedPreferences.Editor editor=mSharedPreferences.edit();
//3.使用putXXX方法保存键值对
editor.putString("sname",sname);
//4.将数据保存在文件中
editor.apply();
然后在Fragment类中进行获取就可以了。
//获取学号
SharedPreferences mSharedPreferences=getActivity().getSharedPreferences("name", Context.MODE_PRIVATE);
final String sname=mSharedPreferences.getString("sname","");
粗浅之见,如有更优,欢迎分享!!

打开App,阅读手记
6人推荐
发表评论
随时随地看视频慕课网APP