位置: 编程技术 - 正文

Android:Activity+Fragment及它们之间的数据交换(一)

编辑:rootadmin

推荐整理分享Android:Activity+Fragment及它们之间的数据交换(一),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

简介:

为什么要用Fragment?使用Fragment可以在一个Activity中实现不同的界面。Fragment与Fragment之间的动画切换,远比Activity与Activity之间的动画切换变化方式多。很多时候,我们通过使用一个Activity,切换多个Fragment。本次博客,主要列举一下Fragment与它的Activity之间进行数据交换的方式。

1.Fragment中通过getActivity()然后进行强制转化,调用Activity中的公有方法

((XXXXActivity)getActivity()).fun();

2.Activity在切换Fragment的时候,通过setArguments向Fragment传递参数,Fragment通过getArguments();获得从activity中传递过来的值

3.Activity实现一个接口,Fragment在onAttach方法中,将该Activity转化为该接口,在需要调用的时候回调。

注意:本Demo是通过FragmentManager来管理Fragment的,通过FragmentManager管理,我们创建Fragment和销毁Fragment的时候,可以通过栈的方式:

a.FragmentTransaction的add方法,添加一个Fragment

b.FragmentTransaction的popBackStack()弹出该Fragment

演示实例:

fragment1.xml

MyFragment1.java

fragment2.xml

Android:Activity+Fragment及它们之间的数据交换(一)

MyFragment2.java回调接口:

main.xml

MainActivity.java

初始画面

切换到第二个Fragment之后,通过Fragment2回调,改变按钮背景后的截图。

注意:

1.直接在Fragment中通过getActivity然后强转Activity的方式调用Activity的方法,这个方式不推荐!因为这会使Fragment的适配性变差。

解决方法:在使用之前,使用instanceof 判断一下Activity的类型

2.FragmentTransaction通过使用setCustomAnimations方法,可以为Fragment的切换增添各种不同的动画。变化方式远比Activity与Activity之间的切换动画要多。

3.多个Fragment之间,可以通过Activity复用很多代码,提高效率。

4.我们还可以通过ViewPager来管理Fragment,通过Adapter添加多个Fragment,然后通过setcurrentitem进行切换。我们同样可以通过setArguments向Fragment传递数据。

android:json解析的两个工具:Gson和Jackson的使用小例子 1.简介json是android与服务器通信过程中常用的数据格式,例如,如下是一个json格式的字符串:{address:Nanjing,name:NUPT,students:[{name:stu1,id:,age:},{name:stu1,id

Android:仿手机QQ好友动态的ListView 1.介绍:本博客使用XListView模仿Android版QQ好友动态的ListView效果。效果截图如下:效果图1效果图2这里面主要涉及的是ListView的布局问题,让我们看一下Ite

android中图型的阴影效果(shadow-effect-with-custom-shapes) 思路:在自定义shape中增加一层或多层,并错开,即可显示阴影效果。为增加立体感,按钮按下的时候,只设置一层。我们可以通过top,bottom,right和left四

标签: Android:Activity+Fragment及它们之间的数据交换(一)

本文链接地址:https://www.jiuchutong.com/biancheng/371341.html 转载请保留说明!

上一篇:android中TextView的SpannableString小结(android textview设置字体)

下一篇:android:json解析的两个工具:Gson和Jackson的使用小例子(android.json)

  • 单位人民币卡账户可以支取现金吗
  • 实习生个人所得税需要申报吗
  • 普票加专票超过30万全交税吗2020
  • 机械租赁带司机税目
  • 房产企业赠送无形资产
  • 增值税普通发票需要交税吗
  • 营利性养老机构需要缴纳哪些税
  • 收到增值税普通发票
  • 跨年发票作废时间有限制吗
  • 核销的方式
  • 购买商品用于抵债的会计分录要怎么做?
  • 金融机构对服务的要求
  • 会务费 发票
  • 没有真实业务的票据贴现
  • 油票发票可以抵进项税吗
  • 自然人出租房屋房产税
  • 代开普票需要具备哪些资料?
  • 银行和保险公司是什么关系
  • 广告制作费怎么入账
  • 购买的技术服务费需要摊销吗
  • 验资报告办理一般需要多久时间
  • 交付使用资产科目核算
  • 侵权行为 法律行为
  • 预提费用年终有余额怎么办
  • windows11怎么添加打印机驱动
  • Mac OS X Mavericks的Finder打开不同标签的操作步骤
  • 红利所得的税法规定
  • 租赁经营账务处理办法
  • 自制原始发票
  • 税收滞纳金可以抵税吗
  • 费用的结转是在借方还是贷方
  • 甲产品生产耗用a材料10000千克,单位成本
  • thinkphp 多数据库
  • 关于php通用返回的问题
  • 浅谈php中的错误处理方法
  • smart 变量表
  • 前期认证相符
  • php中命名空间的路径
  • 微擎框架可以干什么
  • 个人所得税经营所得税申报表A表
  • 工会经费缴纳后会返还吗
  • sqlserver存储过程加密
  • 人工费没有发票怎么入账
  • 发票可否盖财务章
  • 递延所得税如何计提
  • 赠品视同销售会计分录如何编制?
  • 购配件组装机器多少钱
  • 本年利润如何记账
  • 企业固定资产内部控制风险防范体系的构建原则
  • 如何查看solaris版本
  • win7 bug
  • linux ipi
  • freebsd ports安装
  • 硬盘uefi启动安装系统
  • 大白菜u盘启动按f几
  • cmos电池没电会有什么故障现象
  • ubuntu kde gnome
  • linux计划任务怎么写
  • RadioSvr.EXE - RadioSvr是什么进程 有什么用
  • win7系统如何创建新用户
  • macos的磁盘
  • windowsxp的主要特点
  • ExtJS4中的requires使用方法示例介绍
  • jquery width
  • html气泡效果
  • python3循环语句
  • Zxing在CameraManager.get().closeDriver()报错
  • 使用多进程web
  • linux 网卡 配置
  • 非递归快速排序python
  • python3 ftplib
  • node.js介绍
  • android基础入门教程
  • javascript运用
  • javascript视频教程推荐
  • python二分法查找
  • python系统代码
  • 地税登记序号查询系统
  • 企业内部清欠的措施和做法
  • 河北省餐饮经营单位安全生产规定
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设