加载Fragment的方法及终端技术

技术编号:11985861 阅读:82 留言:0更新日期:2015-09-02 15:28
本发明专利技术提供一种加载Fragment的方法及终端,其中方法包括:生成Fragment结点的树结构;确定所述Fragment结点在所述树结构上的位置信息;设置所述Fragment结点的加载状态信息;根据所述Fragment结点的加载状态信息加载对应的子结点上的Fragment;卸载所述子结点对应的父结点或兄弟结点上的Fragment。通过上述方式,本发明专利技术可降低对内存的占用,被及时释放多余的内存,提高终端设备的I/O效率,同时也使得复杂程序在低端设备上运行称为可能。

【技术实现步骤摘要】

本专利技术设及An化oid
,尤其是设及一种加载化agment的方法及终端。
技术介绍
[000引化agment是An化oid中的组件,用来展示界面内容,可W接受用户点击、拖动等 操作和用户进行交互。一个复杂的An化oid应用通常由大量的化agment构成,不同的 化agment展示不同的界面实现不同的操作,当大量的化agment同时被加载进内存时,那些 当前没有展示的化agment占用的内存空间被浪费,一般同时只会显示1至3个化agment, 所W如果没有合理管理化agment会有大量的内存被浪费。另一种情况下,把化agment加 载到内存设及到磁盘I/O操作,速度较慢,对用户体验造成影响。
技术实现思路
本专利技术所要解决的技术问题是:提供一种加载化agment的方法及终端,实现对 化agment的选择性加载、卸载并释放内存空间,提高内存使用效率。 为了解决上述技术问题,本专利技术采用的技术方案为:提供一种加载化agment的方 法,包括;生成化agment结点的树结构;确定所述化agment结点在所述树结构上的位置信 息;设置所述化agment结点的加载状态信息;根据所述化agment结点的加载状态信息加 载对应的子结点上的化agment;卸载所述子结点对应的父结点或兄弟结点上的化agment。 其中,生成Fragment结点的树结构的步骤具体为:启动程序,并初始化所述程序; 加载JS0N描述文件;根据所述JS0N描述文件定义生成所述树结构。 其中,确定所述化agment结点在所述树结构上的位置信息的步骤具体为;定义所 述化agment的关系组织格式;使用JS0N描述所述关系组织格式;确定所述化agment的子 结点、父结点W及兄弟结点的位置信息。 其中,设置所述化agment结点的加载状态信息的步骤具体为;关联所述化agment 到对应的名字,并设置所述化agment的路径;确定所述化agment的上下文信息,并根据上 下文信息设置不同化agment之间的组织调用关系;设置所述化agment为预加载、延迟加 载、条件加载的其中一个。[000引其中,卸载所述子结点对应的父结点或兄弟结点上的化agment具体为:卸载标识 为预加载、延迟加载、条件加载其中一个的化agment结点。 其中,根据所述化agment结点的加载状态信息加载对应的子结点上的化agment 的步骤包括;预加载根结点对应的化agment;根据子结点需要预加载的加载状态信息, 预加载对应化agment子结点上的化agment;延迟加载除根结点外的其他结点对应的 Fragment。 为解决上述问题,本专利技术还提供一种加载化agment的终端,包括;树结构单元,用 于生成化agment结点的树结构;位置单元,用于确定所述化agment结点在所述树结构上的 位置信息;元信息单元,用于设置所述化agment结点的加载状态信息;加载单元,用于根据 所述化agment结点的加载状态信息加载对应的子结点上的化agment;卸载单元,用于卸载 所述子结点对应的父结点或兄弟结点上的Fragment。 其中,所述树结构单元包括:程序启动子单元,用于启动程序,并初始化所述程序; 树结构生成子单元,用于加载JSON描述文件,并根据所述JSON描述文件定义生成所述树结 构。 其中,所述位置单元包括:格式定义子单元,用于定义所述Fragment的关系组织 格式;格式描述子单元,用于使用JSON描述所述关系组织格式;定位子单元,用于确定所述 化agment的子结点、父结点W及兄弟结点的位置信息。 其中,所述元信息单元包括;键值对子单元,用于关联所述Fragment到对应的名 字,并设置所述化agment的路径;Context子单元,用于确定所述化agment的上下文信息, 并根据上下文信息设置不同化agment之间的组织调用关系;元信息设置子单元,用于设置 所述化agment为预加载、延迟加载、条件加载的其中一个。 本专利技术的有益效果在于:区别于现有技术,本专利技术通过生成化agment结点树结 构,并确定其位置信息,设置对应的加载状态信息,并进行加载,最后在化agment使用完后 卸载,实现内存空间的释放,因此在有大量化agment同时加载进内存时,本专利技术可实现对 化agment的选择性加载、卸载,及时释放内存空间,提高内存使用效率的同时,也提高了磁 盘I/O操作效率,实现在低端设备上运行的可行性。【附图说明】 图1为本专利技术方法实施例一的流程示意图; 图2为本专利技术方法实施例一具体操作步骤的流程示意图; 图3为本专利技术终端实施例二的结构示意图; 图4为本专利技术终端实施例二具体结构示意图; 图5为本专利技术的方法及终端的整体操作步骤的流程图; 图6为本专利技术具体实施例的界面示意图一; 图7为本专利技术具体实施例的界面示意图二; 图8为本专利技术具体实施例的界面示意图S。【具体实施方式】 为详细说明本专利技术的
技术实现思路
、所实现目的及效果,W下结合实施方式并配合附 图予W说明。 请参照图1,本专利技术方法实施例一提供一种加载化agment的方法,包括如下步骤; [002引S110 ;生成Rragment结点的树结构; S120 ;确定所述化agment结点在所述树结构上的位置信息; S130 ;设置所述化agment结点的加载状态信息;[002引S140 ;根据所述化agment结点的加载状态信息加载对应的子结点上的Fragment; S150 ;卸载所述子结点对应的父结点或兄弟结点上的化agment。 一般地,本领域技术人员可针对要加载的化agment结点的信息,定义生成一个树 结构,树是一种重要的非线性数据结构,由数据元素(在树中称为结点)按分支关系组织起 来的结构。树结构上存在一个特殊的结点,称为根结点或根(root)。除根结点外,其余结点 被分成多个互不相交的有限集合(或子集),每个子集也为树结构形式。在树结构上除根结 点外的其他结点,根据其在树结构上的位置可定义为父结点、子结点或兄弟结点。每个结点 表示一个化agment的元信息,本专利技术中的元信息主要是指每个化agment结点的加载状态 信息,如是否预加载、是否延迟加载或是否条件加载(即满足相关条件后才进行加载)等加 载状态信息。如一个结点的元信息是预加载,则在程序启动时,就要预先加载其进入内存。 通常根结点都是预加载的,其他所有的结点Fragment都可不预加载,只根据树结构上结点 的元信息加载对应子结点的化agment。 而为了不占用过多的内存,对一些结点的元消息设置为延迟加载或条件加载,该 些结点只有满足特定条件或特定的时刻才进行加载。而已加载的结点(包括预加载的)在 使用完后,若卸载后对整个程序不产生负面影响时,可对其进行卸载,该样就可释放内存。 从上述描述可知,本专利技术的有益效果在于;区别于现有技术,本专利技术方法实施例一 通过为化agment结点生成树结构,并在上树结构确定其位置信息后,根据实际需要对其设 置相应的加载状态信息,并在使用完后卸载。该样实现了对内存空间的充分使用,又不占用 过多的内存,提高相应电子设备的运行速度,如I/O操作等。 其中,如图2所示,本专利技术方法实施例一在执行步骤S110时,可具体执行如本文档来自技高网
...
<a href="http://www.xjishu.com/zhuanli/55/CN104881305.html" title="加载Fragment的方法及终端原文来自X技术">加载Fragment的方法及终端</a>

【技术保护点】
一种加载Fragment的方法,其特征在于,包括:生成Fragment结点的树结构;确定所述Fragment结点在所述树结构上的位置信息;设置所述Fragment结点的加载状态信息;根据所述Fragment结点的加载状态信息加载对应的子结点上的Fragment;卸载所述子结点对应的父结点或兄弟结点上的Fragment。

【技术特征摘要】

【专利技术属性】
技术研发人员:刘德建方振华李上杰李洋
申请(专利权)人:福建天晴数码有限公司
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1