位置: 编程技术 - 正文

Android学习笔记(七)Fragment(android自学)

编辑:rootadmin
Android Fragment 例子

推荐整理分享Android学习笔记(七)Fragment(android自学),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:android知识点总结,android基础入门教程,android入门教程,android基础知识入门,android基础教程,android基础入门教程,android入门教程,android基础入门教程,内容如对您有帮助,希望把文章链接给更多的朋友!

创建一个Fragment的例子,实现的功能大致如下:点击按钮1,显示Fragment1的内容,点击按钮2,显示Fragment2的内容

步骤:

1、新建一个Android项目,生成了一个MainActivity.java文件

2、为这个MainActivity配置布局文件activity_main.xml

3、分别创建Fragment1和Fragment2文件

4、再为Fragments配置布局文件,完成与配置文件相关的代码

5、再回过头来编写MainActivity中的逻辑代码

具体步骤如下:

1、新建一个Android项目,生成了一个MainActivity.java文件

2、为这个MainActivity配置布局文件activity_main.xml

在本例中,我们定义两个不同的按钮,当按钮被点击的时候,fragment的内容就显示在下方。

所以布局就很简单了,我们使用线性LinearLayout的布局,两个button一个fragment

注意:当在布局添加Fragment时,必须定义android:name和android:id,android:name定义了一个我们想要实例化的Fragment类,id代表唯一的fragment。在该类中我们定义FragmentOne为默认显示的Fragment

3、分别创建Fragment1和Fragment2文件

创建Fragment差异之一,就是你必须使用oncreateView()回调方法来定义布局。这也是运行一个fragment所需要唯一回调的方法。

inflate()方法的三个参数:

想要加载的layout的resourceID

加载的layout的父ViewGroup

布尔&#;指示在加载期间,展开的layout是否应当附着到ViewGroup中

4、再为Fragments配置布局文件,完成Fragment与配置文件相关的代码,两个fragment的配置文件基本相同,只是更改了背景颜色来区别

5、再回过头来编写MainActivity中的逻辑代码

在Activity中管理Fragment就必须要使用FragmentManager,通过调用getFragmentManager()得到它的实例。

Activity中使用fragment有一个很强的特性是:根据用户的交互情况,对fragment进行添加,移除,替换以及执行其他动作。提交给activity的每一套变化被称为一个使用。通常用FragmentTransaction中的API来处理。FragmentManager对象的beginTransaction()方法即可开启返回FragmentTransaction对象。

运行结果如下所示:

Fragment分析Fragment的生命周期Android学习笔记(七)Fragment(android自学)

如Activity类&#;,Fragment也存在以下状态。

活动状态,当前Fragment位于前台,用户可见,可以获得焦点

暂停状态,其他Activity位于前台,该Fragment依然可见,只是不能获得焦点

停止状态,该Fragment不可见,失去焦点

销毁状态,该Fragment被完全删除,或该Fragment所在的Activity被结束

如下图所示,该图片摘自网络

OnAttach()当Fragment被添加到Activity时被回调,该方法只会被调用一次

OnCreate()创建Fragment时被回调,该方法只会被回调一次

onCreateView()每次创建、绘制Fragment的view组件时回调该方法,Fragment将会显示该方法返回的View组件

onActivityCreated()当Fragment所在的Activity被启动完成后回调该方法

onStart()启动Fragment时被回调

onResume()恢复Fragment时被回调,onStart()方法后一定回调onResume

onPause()暂停时被回调

onStop()停止时被回调

onDestory()销毁时被回调,该方法只调用一次

onDetch()当Fragment从Activity中被删除、替换完成时回调改方法,OnDestory()方法后一定回调onDetch()方法。该方法只会被调用一次。

例如第一个例子做下实验,验证Fragment执行的流程

MainActivity中添加测试语句

FragmentOne中添加测试语句,同理FragmentTwo

当运行程序时显示主界面时,输出的语句时,第一次就输出Fragment1中的方法,是因为我的默认显示是Fragment1

当点击按钮Fragment1时输出的语句是

当点击按钮Fragment2时输出的语句是

这是因为Fragment1彻底由Fragment2代替,必然经过销毁的过程,然后创建Fragment2,从加载到运行状态。与上图中的流程一一对应。

关于Android问专栏的前言 前言上周的时候见一个日报的老大哥,在吃饭闲聊之余,问了一下我你在公司是不是属于那比不可少的人员,我有点不好意思的说是的,因为项目组里

Android下屏幕适配 Android下屏幕适配适配:即当前应用在相同的手机上面显示相同的效果。适配前需要首先确定当前手机所属像素密度类型(如:xhdpi、hdpi、mdpi等),以下已

ApplicationId与PackageName的区别 原文链接:

标签: android自学

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

上一篇:移动应用界面设计的尺寸设置及规范(移动应用界面设计形考1答案)

下一篇:关于Android30问专栏的前言(android常见问题及解决方法)

  • 一般纳税人劳务公司可以开3%的发票吗
  • 营改增后纳税人可以使用的发票种类有
  • 差旅费过路费会计分录
  • 报销是否需要发票
  • 总产值和主营业务收入
  • 微商怎么收税
  • 发票认证延期抵扣啥意思
  • 税收的性质是哪一项
  • 原材料暂估少了如何调整
  • 律师行业税务如何做账
  • 企业受托研发产品有哪些
  • 外出施工安装的公司发工资怎么记账?
  • 损益调整是什么科目
  • 应付账款扣款怎么做账
  • 园林绿化工程的分项工程有几个
  • 支付境外个人佣金
  • 无形资产租赁税率多少
  • 拿到农产品0税率的发票可以抵扣吗
  • 企业年报最容易掉进的九大“陷阱”
  • 可以通过哪些渠道获得就业信息
  • 库存现金可以做中转科目嘛为什么
  • 当月取得的进项必须当月勾选吗
  • 商贸公司进项税额大
  • 金融保险属于什么行业
  • 交付是不是法律行为
  • 销售折让怎么做分录
  • 慈善总会捐赠流程
  • kb4586853更新
  • react img onerror
  • 分手我不怕
  • Yii使用技巧大汇总
  • 银行存放同业的钱安全吗
  • 其他应付款怎样结转
  • 进项税额不得抵扣的情况有哪些
  • php文件上传用什么请求方法
  • php splqueue
  • 桑吉尔夫个人简介
  • vue3使用高德地图
  • 自动驾驶感知决策控制
  • Android AsyncTack 异步任务实例详解
  • 交易性金融资产的入账价值
  • 电子票开票人复核人一样有影响吗
  • 研发费用没有发票怎么做账
  • c语言printf输出数组
  • python怎么打开mac本地文件
  • 现金流量表年报期末现金余额
  • 环保税计税依据怎么算
  • sql server 2012安装无网络可以OK?
  • 存货跌价准备转回的条件有哪些
  • sql死锁的简单例子
  • 个人报销电话费开发票是个人名还是公司名
  • 什么是试算平衡表,编制试算平衡表时应注意哪些方面
  • 小规模纳税人购买原材料会计分录
  • 购车是否有进项税额
  • 土地出让金抵减增值税
  • 盘盈的固定资产按什么入账
  • 五险一金个人和公司缴费比例
  • 银行回单中借贷表示什么意思
  • 一般纳税人先确认收入吗
  • 个人无偿赠与不动产税收管理
  • sql server用处
  • 不一样的萧先生
  • 双硬盘无法进入bios
  • 电脑开机蓝屏怎么解决xp系统
  • win10系统怎样卸载程序
  • win7系统电脑怎么连接wifi
  • win8.1关机没反应
  • cocos2d怎么用
  • android:ListView的局部刷新
  • css鼠标移入显示
  • 我为什么要
  • Unity3D游戏开发标准教程吴亚峰于复兴人民邮电出版社
  • viewpager2+fragment
  • 基于jQuey实现鼠标滑过变色(整行变色)
  • android基础入门教程
  • android中启动service的方法有
  • js输出表格
  • 在发票软件里开出发票第二天打印可以么?
  • 在国税局工作属于什么职业
  • 税务部门放管服
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设