CN110347453A - 一种页面显示方法和装置 - Google Patents
一种页面显示方法和装置 Download PDFInfo
- Publication number
- CN110347453A CN110347453A CN201810301707.4A CN201810301707A CN110347453A CN 110347453 A CN110347453 A CN 110347453A CN 201810301707 A CN201810301707 A CN 201810301707A CN 110347453 A CN110347453 A CN 110347453A
- Authority
- CN
- China
- Prior art keywords
- activity
- project
- node
- page
- activity node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种页面显示方法和装置。所述方法包括:预先对需要动态显示的项目的显示模式进行配置,得到项目对应每种应用场景的动态加载模式;在页面初始化时,根据动态加载模式在配置文件中对项目的活动activity结点进行配置;将配置文件中配置后的activity结点加载到内存中;根据选择的动态加载模式从所述内存中筛选所选择的动态加载模式对应的activity结点;在页面中显示筛选到的activity结点对应的项目。本发明将activity结点与页面对应的项目的配置维护在一个外部文件中,使动态显示的项目逻辑更加清晰,文件之间的耦合度减少,降低维护成本。
Description
技术领域
本发明涉及Android开发技术领域,特别涉及一种页面显示方法和装置。
背景技术
在应用主界面的底部导航栏bottomBar的设计中,动态显示的项目要写到文件layout.xml,并在java文件中去控制和完善显示效果。这样的设计方案使得需要动态显示的项目扩展性差,如果在bottomBar中增加或者删除某些项目,需要到活动activity结点或者layout.xml代码中去维护,这样的修改方式不但会增加维护成本,且极容易出现错误。
例如腾讯QQ的首页的底部导航栏有“消息”、“联系人”、“动态”三个项目。在一些定制化应用中,可能需要显示不同的项目,如:不需要“联系人”或者“动态”。此外,目前的底部导航栏中的项目,只有在点击的某个项目时才会加载项目内容,假如某些页面加载时需要耗时操作,会给用户不友好的体验。
发明内容
基于本发明的一个目的,本发明提供了一种页面显示方法和装置,以解决页面中的项目动态显示方式不友好,项目的维护成本高的问题。
为达到上述目的,本发明的技术方案是这样实现的:
一方面,本发明提供一种页面显示方法,包括:
预先对需要动态显示的项目的显示模式进行配置,得到项目对应每种应用场景的动态加载模式;
在页面初始化时,根据动态加载模式在配置文件中对项目的活动activity结点进行配置;
将配置文件中配置后的activity结点加载到内存中;
根据选择的动态加载模式从内存中筛选所选择的动态加载模式对应的activity结点;在页面中显示筛选到的activity结点对应的项目。
优选地,根据动态加载模式在配置文件中对项目的活动activity结点进行配置,包括:配置activity结点的意图过滤器Intent Filter匹配预先配置的动态加载模式;配置activity结点的排列顺序Order和显示图片Icon,Order指示activity结点的项目在页面中的显示位置,Icon指示activity结点的项目在页面中显示的图片。
优选地,配置activity结点的意图过滤器Intent Filter匹配预先配置的动态加载模式,包括:在activity结点的Intent Filter中,设置预先配置的一种所述动态加载模式。
优选地,将配置文件中配置后的activity结点加载到内存中,包括:利用应用程序管理对象PackageManager将配置后的activity结点加载到内存的预设集合中。
优选地,在页面中显示筛选到的activity结点对应的项目,包括:利用活动群ActivityGroup的成员变量对象LocalActivityManager将筛选到的activity结点进行加载,并根据加载的activity结点设置控件RadioGroup的子节点RadioButton;根据设置的RadioButto在页面显示所加载的activity结点对应的项目。
另一方面,本发明提供一种页面显示装置,包括:
显示模式配置单元,用于预先对需要动态显示的项目的显示模式进行配置,得到项目对应每种应用场景的动态加载模式;
activity配置单元,用于在页面初始化时,根据动态加载模式在配置文件中对项目的活动activity结点进行配置;
加载单元,用于将配置文件中配置后的activity结点加载到内存中;
选择单元,用于根据选择的动态加载模式从所述内存中筛选所选择的动态加载模式对应的activity结点;显示单元,用于在页面中显示筛选到的activity结点对应的项目。
优选地,activity配置单元,用于配置activity结点的意图过滤器Intent Filter匹配预先配置的所述动态加载模式;以及,配置activity结点的排列顺序Order和显示图片Icon,Order指示activity结点的项目在页面中的显示位置,Icon指示activity结点的项目在页面中显示的图片。
优选地,activity配置单元,还用于在activity结点的Intent Filter中,设置预先配置的一种动态加载模式。
优选地,加载单元,用于利用应用程序管理对象PackageManager将配置后的activity结点加载到内存的预设集合中。
优选地,显示单元,用于利用活动群ActivityGroup的成员变量对象LocalActivityManager将筛选到的activity结点进行加载,并根据加载的activity结点设置控件RadioGroup的子节点RadioButton;根据设置的RadioButto在页面显示所加载的activity结点对应的项目。
本发明的有益效果是:本发明将页面中动态显示的项目的增、删、改逻辑从代码中抽离出来,提取到配置文件中,使activity结点与页面对应的项目的配置可以维护在一个外部文件中,使动态显示的项目逻辑更加清晰,文件之间的耦合度减少,降低维护成本。
附图说明
图1为本发明实施例提供的页面显示方法的流程图;
图2为本发明实施例提供的页面显示装置的结构框图;
图3为本发明实施例提供的页面显示装置的硬件结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1为本发明实施例提供的页面显示方法的流程图,如图1所示,本实施例的方法包括:
S110,预先对需要动态显示的项目的显示模式进行配置,得到项目对应每种应用场景的动态加载模式。
本实施例预先根据每种应用场景配置项目相应的动态加载模式,如配置应用App加载模式,默认加载模式,用户自定义加载模式等。
S120,在页面初始化时,根据动态加载模式在配置文件中对项目的活动activity结点进行配置,所述配置文件为根目录配置AndroidManifest.xml文件。
本实施例在页面初始时,在配置AndroidManifest.xml文件中对每个动态显示的项目的activity结点进行配置,如配置activity结点的意图过滤器Intent Filter和元数据Meta Data,使activity结点对应于一种动态加载模式。
S130,将配置文件中配置后的activity结点加载到内存中。
本市实施例利用应用程序管理对象PackageManager将配置后的activity结点加载到内存的预设集合中,以使后续页面显示activity结点的项目时,项目内容已被加载完成,无需用户耗时等待加载项目内容。
S140,根据选择的动态加载模式从内存中筛选所选择的动态加载模式对应的activity结点。
本实施例在接收到用户选择的动态加载模式后,从内存中筛选所选择的动态加载模式对应的activity结点,即选择支持所选择的动态加载模式的activity结点。
S150,在页面中显示筛选到的activity结点对应的项目。
本实施例将支持所选择的动态加载模式的activity结点的项目,若支持所选择的动态加载模式的activity结点包括“联系人”、“游戏”、“消息”,则将对应于“联系人”、“游戏”、“消息”的项目显示在页面的底部导航栏中。
本实施例将页面中动态显示的项目的增、删、改逻辑从代码中抽离出来,提取到AndroidManifest.xml文件中,使activity结点与页面对应的项目的配置可以维护在一个外部文件中,使动态显示的项目逻辑更加清晰,文件之间的耦合度减少,降低维护成本。
在本实施例的一个实现中,通过下述方法配置activity结点:
配置activity结点的Intent Filter匹配预先配置的动态加载模式;根据本发明的实施例,在activity结点的Intent Filter中,设置预先配置的一种动态加载模式,如设置activity结点的intent-filter为动态加载模式A,该activity结点的项目只有在后续选择了动态加载模式A时才会显示在页面中。
配置activity结点的排列顺序Order和显示图片Icon,Order指示activity结点的项目在页面中的显示位置,Icon指示activity结点的项目在页面中显示的图片;根据本发明的实施例,设置meta-data中的Order和Icon,Order和Icon分别是页面中控件RadioGroup的子节点RadioButton排列顺序和显示的图片。
在页面中显示筛选到的activity结点对应的项目时,利用活动群ActivityGroup的成员变量对象LocalActivityManager将筛选到的activity结点进行加载,并根据加载的activity结点设置控件RadioGroup的子节点RadioButton,即根据加载的activity结点中meta-data中的Order和Icon设置子节点RadioButton的顺序和加载图片,根据设置的RadioButto在页面显示所加载的activity结点对应的项目。
与本发明实施例的页面显示方法相对应的,本发明实施例还提供一种页面显示装置。
图2为本发明实施例提供的页面显示装置的结构框图,如图2所示,本发明实施例的页面显示装置20包括:
显示模式配置单元21,用于预先对需要动态显示的项目的显示模式进行配置,得到项目对应每种应用场景的动态加载模式;
activity配置单元22,用于在页面初始化时,根据动态加载模式在配置文件中对项目的活动activity结点进行配置;
加载单元23,用于将配置文件中配置后的activity结点加载到内存中;
选择单元24,用于根据选择的动态加载模式从内存中筛选所选择的动态加载模式对应的activity结点;显示单元25,用于在页面中显示筛选到的activity结点对应的项目。
根据本发明的实施例,activity配置单元22,用于配置activity结点的意图过滤器Intent Filter匹配预先配置的所述动态加载模式;以及,配置activity结点的排列顺序Order和显示图片Icon,Order指示所述activity结点的项目在页面中的显示位置,Icon指示所述activity结点的项目在页面中显示的图片。
具体的,activity配置单元22,还用于在activity结点的Intent Filter中,设置预先配置的一种所述动态加载模式。
加载单元23,用于利用应用程序管理对象PackageManager将配置后的activity结点加载到内存的预设集合中。
显示单元25,用于利用活动群ActivityGroup的成员变量对象LocalActivityManager将筛选到的activity结点进行加载,并根据加载的activity结点设置控件RadioGroup的子节点RadioButton;根据设置的RadioButto在页面显示所加载的activity结点对应的项目。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本申请提供的页面显示装置可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,参照图3所示,本申请提供的查询页面显示装置20可包括处理器301、存储有机器可执行指令的机器可读存储介质302。处理器301与机器可读存储介质302可经由系统总线303通信。并且,通过读取并执行机器可读存储介质302中与页面显示逻辑对应的机器可执行指令,处理器301可执行上文描述的页面显示方法。
本申请中提到的机器可读存储介质302可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、DVD等),或者类似的存储介质,或者它们的组合。
根据本申请公开的示例,本申请还提供了一种包括机器可执行指令的机器可读存储介质,例如图3中的机器可读存储介质302,所述机器可执行指令可由页面显示装置20中的处理器301执行以实现以上描述的页面显示方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。为了便于清楚描述本发明实施例的技术方案,在发明的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分,本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定。
以上所述,仅为本发明的具体实施方式,在本发明的上述教导下,本领域技术人员可以在上述实施例的基础上进行其他的改进或变形。本领域技术人员应该明白,上述的具体描述只是更好的解释本发明的目的,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种页面显示方法,其特征在于,所述方法包括:
预先对需要动态显示的项目的显示模式进行配置,得到所述项目对应每种应用场景的动态加载模式;
在页面初始化时,根据所述动态加载模式在配置文件中对所述项目的活动activity结点进行配置;
将所述配置文件中配置后的activity结点加载到内存中;
根据选择的动态加载模式从所述内存中筛选所选择的动态加载模式对应的activity结点;在所述页面中显示筛选到的activity结点对应的项目。
2.根据权利要求1所述的方法,其特征在于,所述根据所述动态加载模式在配置文件中对所述项目的活动activity结点进行配置,包括:
配置所述activity结点的意图过滤器Intent Filter匹配预先配置的所述动态加载模式;
配置所述activity结点的排列顺序Order和显示图片Icon,Order指示所述activity结点的项目在页面中的显示位置,Icon指示所述activity结点的项目在页面中显示的图片。
3.根据权利要求2所述的方法,其特征在于,所述配置所述activity结点的意图过滤器Intent Filter匹配预先配置的所述动态加载模式,包括:
在所述activity结点的Intent Filter中,设置预先配置的一种所述动态加载模式。
4.根据权利要求1所述的方法,其特征在于,所述将所述配置文件中配置后的activity结点加载到内存中,包括:
利用应用程序管理对象PackageManager将配置后的activity结点加载到内存的预设集合中。
5.根据权利要求1所述的方法,其特征在于,所述在所述页面中显示筛选到的activity结点对应的项目,包括:
利用活动群ActivityGroup的成员变量对象LocalActivityManager将筛选到的activity结点进行加载,并根据加载的activity结点设置控件RadioGroup的子节点RadioButton;
根据设置的RadioButto在页面显示所加载的activity结点对应的项目。
6.一种页面显示装置,其特征在于,所述装置包括:
显示模式配置单元,用于预先对需要动态显示的项目的显示模式进行配置,得到所述项目对应每种应用场景的动态加载模式;
activity配置单元,用于在页面初始化时,根据所述动态加载模式在配置文件中对所述项目的活动activity结点进行配置;
加载单元,用于将所述配置文件中配置后的activity结点加载到内存中;
选择单元,用于根据选择的动态加载模式从所述内存中筛选所选择的动态加载模式对应的activity结点;显示单元,用于在所述页面中显示筛选到的activity结点对应的项目。
7.根据权利要求6所述的装置,其特征在于,
所述activity配置单元,用于配置所述activity结点的意图过滤器Intent Filter匹配预先配置的所述动态加载模式;以及,配置所述activity结点的排列顺序Order和显示图片Icon,Order指示所述activity结点的项目在页面中的显示位置,Icon指示所述activity结点的项目在页面中显示的图片。
8.根据权利要求7所述的装置,其特征在于,
所述activity配置单元,还用于在所述activity结点的Intent Filter中,设置预先配置的一种所述动态加载模式。
9.根据权利要求6所述的装置,其特征在于,
所述加载单元,用于利用应用程序管理对象PackageManager将配置后的activity结点加载到内存的预设集合中。
10.根据权利要求6所述的装置,其特征在于,
所述显示单元,用于利用活动群ActivityGroup的成员变量对象LocalActivityManager将筛选到的activity结点进行加载,并根据加载的activity结点设置控件RadioGroup的子节点RadioButton;根据设置的RadioButto在页面显示所加载的activity结点对应的项目。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810301707.4A CN110347453B (zh) | 2018-04-04 | 2018-04-04 | 一种页面显示方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810301707.4A CN110347453B (zh) | 2018-04-04 | 2018-04-04 | 一种页面显示方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110347453A true CN110347453A (zh) | 2019-10-18 |
CN110347453B CN110347453B (zh) | 2022-12-09 |
Family
ID=68172830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810301707.4A Active CN110347453B (zh) | 2018-04-04 | 2018-04-04 | 一种页面显示方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110347453B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103744669A (zh) * | 2013-12-26 | 2014-04-23 | 世纪龙信息网络有限责任公司 | 安卓系统Activity插件的创建、调用方法及系统 |
CN104699536A (zh) * | 2015-03-18 | 2015-06-10 | 北京奇虎科技有限公司 | 活动组件进程空间分配方法及其相应的装置 |
CN105354067A (zh) * | 2015-12-02 | 2016-02-24 | 广东欧珀移动通信有限公司 | 一种界面配置方法及装置 |
CN105446755A (zh) * | 2014-08-06 | 2016-03-30 | 阿里巴巴集团控股有限公司 | 一种用于Android系统上快速加载Activity数据的方法和装置 |
CN105988846A (zh) * | 2015-03-03 | 2016-10-05 | 腾讯科技(深圳)有限公司 | 页面加载方法及页面加载装置 |
CN107229633A (zh) * | 2016-03-24 | 2017-10-03 | 北京神州泰岳软件股份有限公司 | 静态页面生成方法、网页访问方法及装置 |
-
2018
- 2018-04-04 CN CN201810301707.4A patent/CN110347453B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103744669A (zh) * | 2013-12-26 | 2014-04-23 | 世纪龙信息网络有限责任公司 | 安卓系统Activity插件的创建、调用方法及系统 |
CN105446755A (zh) * | 2014-08-06 | 2016-03-30 | 阿里巴巴集团控股有限公司 | 一种用于Android系统上快速加载Activity数据的方法和装置 |
CN105988846A (zh) * | 2015-03-03 | 2016-10-05 | 腾讯科技(深圳)有限公司 | 页面加载方法及页面加载装置 |
CN104699536A (zh) * | 2015-03-18 | 2015-06-10 | 北京奇虎科技有限公司 | 活动组件进程空间分配方法及其相应的装置 |
CN105354067A (zh) * | 2015-12-02 | 2016-02-24 | 广东欧珀移动通信有限公司 | 一种界面配置方法及装置 |
CN107229633A (zh) * | 2016-03-24 | 2017-10-03 | 北京神州泰岳软件股份有限公司 | 静态页面生成方法、网页访问方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110347453B (zh) | 2022-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107957831B (zh) | 一种展示界面内容的数据处理方法、装置和处理设备 | |
CN106663042B (zh) | 可扩展数据存储池 | |
CN105515872B (zh) | 配置信息的更新方法、装置及系统 | |
CN109714188B (zh) | 基于Zookeeper的配置数据管理方法、设备和存储介质 | |
CN104915268A (zh) | 桌面布局的存储、恢复方法及其装置、终端设备、系统 | |
CN103198090A (zh) | 用于优化虚拟桌面环境中的存储分配的方法和系统 | |
CN109561272A (zh) | 会议信息的显示方法及装置 | |
CN112099800B (zh) | 代码数据的处理方法、装置和服务器 | |
CN107704241A (zh) | 一种页面状态切换的显示方法和装置 | |
CN104808953B (zh) | 控制数据存储的方法、装置及移动终端 | |
CN105094811A (zh) | 一种事件处理的方法和装置 | |
CN103838720B (zh) | 页面文件载入执行方法和装置 | |
CN106462442A (zh) | 加载虚拟机的系统和方法 | |
CN111402058A (zh) | 一种数据处理方法、装置、设备及介质 | |
CN113407254B (zh) | 表单生成方法、装置、电子设备及存储介质 | |
CN110034994A (zh) | 用于虚拟专有云服务的系统和虚拟专有云服务的实现方法 | |
CN111126604B (zh) | 模型训练方法、装置、服务器及存储介质 | |
CN110659295B (zh) | 一种基于hawq记录有效数据的方法、装置和介质 | |
CN110244951A (zh) | 应用发布方法及装置 | |
CN109039670A (zh) | 团队配置方法、团队配置方案的分享方法及装置 | |
CN110347453A (zh) | 一种页面显示方法和装置 | |
US11258838B2 (en) | Method, system, and non-transitory computer readable record medium for processing chatroom based on usage | |
CN104753938A (zh) | 一种信息处理方法及电子设备 | |
CN109756525A (zh) | 信息订阅方法及装置 | |
CN112861185A (zh) | 基于Hive数据仓库的数据自动变形传输方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: Room 818, 8 / F, 34 Haidian Street, Haidian District, Beijing 100080 Applicant after: ULTRAPOWER SOFTWARE Co.,Ltd. Address before: 100089 Beijing city Haidian District wanquanzhuang Road No. 28 Wanliu new building 6 storey block A Room 601 Applicant before: ULTRAPOWER SOFTWARE Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |