CN115080171A - 用户界面配置方法及其装置、电子设备和存储介质 - Google Patents
用户界面配置方法及其装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN115080171A CN115080171A CN202210767311.5A CN202210767311A CN115080171A CN 115080171 A CN115080171 A CN 115080171A CN 202210767311 A CN202210767311 A CN 202210767311A CN 115080171 A CN115080171 A CN 115080171A
- Authority
- CN
- China
- Prior art keywords
- skin
- user interface
- package
- user
- festival
- 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.)
- Pending
Links
Images
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)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种用户界面配置方法。该用户界面配置方法包括:从日历中获取当前日期的换肤日程;根据获取到的换肤日程确定目标皮肤包;根据目标皮肤包配置用户界面。本申请的用户界面配置方法通过日历实现对用户界面的智能换肤,实现在多会议场景、多会议主题下,用户界面能够自动切换为合适的皮肤,能够与会议场景和主题相互响应,提升用户体验。本申请还提供一种用户界面配置装置、电子设备和存储介质。
Description
技术领域
本申请涉及界面配置技术领域,特别涉及一种用户界面配置方法及其装置、电子设备和存储介质。
背景技术
随着智能设备的普及,会议一体机等电子设备被越来越广泛的使用到各公司、各场景的会议室中或者各类型的展厅中。对于会议一体机的白板使用场景是多种多样的,会议主题也是多变的,例如教育主题、商务主题、医疗主题、党政主题等。但是,当前的白板软件只有一种用户界面(UserInterface,UI)风格,白板应用程序的用户界面不能与会议主题相适应,用户体验不佳。
发明内容
有鉴于此,本发明旨在至少在一定程度上解决相关技术中的问题之一。为此,本申请的目的在于提供一种用户界面配置方法及其装置、电子设备和存储介质。
本申请实施方式提供一种用户界面配置方法。所述用户界面配置方法包括:从日历中获取当前日期的换肤日程;根据获取到的所述换肤日程确定目标皮肤包;根据所述目标皮肤包配置所述用户界面。
在某些实施方式中,所述用户界面配置方法包括:生成节日换肤日程,所述节日换肤日程包括节日日期对应的节日皮肤包标识;所述生成节日换肤日程,包括:在本地存在与所述节日皮肤包标识对应的节日皮肤包的情况下,根据所述节日皮肤包的存储路径将所述节日换肤日程插入所述日历。
在某些实施方式中,所述生成节日换肤日程,包括:若本地不存在与所述节日皮肤包标识对应的所述节日皮肤包,则下载所述节日皮肤包并存储到本地;根据所述节日皮肤包的存储路径将所述节日换肤日程插入所述日历。
在某些实施方式中,所述根据获取到的所述换肤日程确定目标皮肤包,包括:在获取到所述节日换肤日程的情况下,根据所述节日换肤日程对应的存储路径确定所述目标皮肤包。
在某些实施方式中,所述用户界面配置方法包括:生成用户换肤日程,所述用户换肤日程包括用户选择的皮肤包标识;所述生成用户换肤日程,包括:根据用户选择的皮肤包标识对应的皮肤包在本地的存储路径将所述用户换肤日程添加到所述日历。
在某些实施方式中,所述根据用户选择的皮肤包标识对应的皮肤包在本地的存储路径将所述用户换肤日程添加到所述日历,包括:在用户选择的皮肤包标识对应的皮肤包为本地皮肤包的情况下,根据所述本地皮肤包的存储路径将所述用户换肤日程添加到所述日历。
在某些实施方式中,所述根据用户选择的皮肤包标识对应的皮肤包在本地的存储路径将所述用户换肤日程添加到所述日历,包括:在用户选择的皮肤包标识对应的皮肤包为云端皮肤包的情况下,下载所述云端皮肤包并存储到本地;根据所述云端皮肤包在本地的存储路径将所述用户换肤日程插入所述日历。
在某些实施方式中,所述根据获取到的换肤日程确定目标皮肤包,包括:在获取到所述用户换肤日程的情况下,根据所述用户换肤日程对应的存储路径确定所述目标皮肤包。
在某些实施方式中,所述根据所述目标皮肤包配置所述用户界面,包括:确定所述目标皮肤包对应的应用程序;根据所述目标皮肤包配置所述应用程序的用户界面。
在某些实施方式中,所述根据所述目标皮肤包配置所述用户界面,包括:确定所述用户界面中需要换肤的控件;加载所述目标皮肤包得到所述控件的目标资源;根据所述目标资源替换所述用户界面对应的宿主包资源,完成对所述用户界面的配置,所述宿主包资源为应用程序中用于配置所述用户界面的资源。
在某些实施方式中,所述确定所述用户界面中需要换肤的控件,包括:启动所述用户界面;构建View视图;根据自定义的解析器解析所述View视图的预设资源文件,确定需要换肤的View,并将需要换肤的View和View的属性保存到预设集合,以确定需要换肤的控件。
在某些实施方式中,所述根据所述目标资源替换所述用户界面对应的宿主包资源,完成对所述用户界面的配置,包括:从所述预设集合读取需要换肤的View的属性;根据需要换肤的View的属性对应的所述宿主包资源标识获取资源类型和名称;根据所述资源类型和名称获取所述目标皮肤包中对应的目标资源标识;根据所述目标资源标识获取目标资源文件;根据所述目标资源文件更新对应的View的属性,完成对所述用户界面的配置。
本申请还提供一种用户界面配置装置。所述用户界面配置装置包括:获取模块、确定模块和配置模块。所述获取模块用于从日历中获取当前日期的换肤日程;所述确定模块用于根据获取到的所述换肤日程确定目标皮肤包;所述配置模块用于根据所述目标皮肤包配置所述用户界面。
本申请还提供一种电子设备。所述电子设备包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时实现上述实施方式中任一项所述的用户界面配置方法。
本申请还提供一种包含计算机程序的非易失性计算机可读存储介质。当所述计算机程序被一个或多个处理器执行时,使得所述处理器执行上述实施方式中任一项所述的用户界面配置方法。
本申请的用户界面配置方法及其装置、电子设备和存储介质通过日历实现对用户界面的智能换肤,实现在多会议场景、多会议主题下,用户界面能够自动切换为合适的皮肤,能够与会议场景和主题相互响应,提升用户体验。
本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是本申请某些实施方式的用户界面配置方法的流程示意图;
图2是本申请某些实施方式的用户界面配置装置的结构示意图;
图3是本申请某些实施方式的用户界面配置方法的流程示意图;
图4是本申请某些实施方式的用户界面配置装置的结构示意图;
图5是本申请某些实施方式的用户界面配置方法的流程示意图;
图6是本申请某些实施方式的用户界面配置方法的流程示意图;
图7是本申请某些实施方式的用户界面配置方法的流程示意图;
图8是本申请某些实施方式的用户界面配置装置的结构示意图;
图9是本申请某些实施方式的用户界面配置方法的流程示意图;
图10是本申请某些实施方式的用户界面配置方法的流程示意图;
图11是本申请某些实施方式的用户界面配置方法的流程示意图;
图12是本申请某些实施方式的用户界面配置方法的流程示意图;
图13是本申请某些实施方式的用户界面配置方法的流程示意图;
图14是本申请某些实施方式的用户界面配置方法的流程示意图;
图15本申请某些实施方式的用户界面配置方法中安卓系统加载资源的流程示意图;
图16是本申请某些实施方式的用户界面配置方法的流程示意图;
图17是本申请某些实施方式的用户界面配置方法中根据宿主包资源ID获得皮肤包的目标资源ID的原理流程示意图;
图18是本申请某些实施方式的电子设备的结构示意图;
图19是本申请某些实施方式的计算机可读存储介质的结构示意图。
具体实施方式
下面详细描述本申请的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。
在本申请的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体地限定。
在本申请的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接或可以相互通信;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
下文的公开提供了许多不同的实施方式或例子用来实现本申请的不同结构。为了简化本申请的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本申请。此外,本申请可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。
下面详细描述本申请的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。
请参阅图1,本申请提供一种用户界面配置方法。该用户界面配置方法包括:
02:从日历中获取当前日期的换肤日程;
04:根据获取到的换肤日程确定目标皮肤包;
06:根据目标皮肤包配置用户界面。
请结合图2,本申请还提供一种用户界面配置装置10。该用户界面配置装置10包括获取模块12、确定模块14和配置模块16。获取模块12用于从日历中获取当前日期的换肤日程;确定模块14用于根据获取到的换肤日程确定目标皮肤包;配置模块16用于根据目标皮肤包配置用户界面。
本申请的日历可以为安卓系统的一个应用程序,该日历支持开机自启动和插入日程功能,支持与用户界面配置装置10中的应用程序进行通信。例如,本申请的日历可以与白板应用程序进行通信。
当用户界面配置装置10中的应用程序为白板应用程序时,可以理解地,在日历和白板应用程序启动后,可以先判断白板应用程序是否开启了智能换肤功能。在白板应用程序开启智能换肤功能的情况下,才能从日历中获取当前日期的换肤日程。
在从日历中获取当前日期的换肤日程之后,根据获取到的换肤日程确定目标皮肤包,根据目标皮肤包配置用户界面。其中,目标皮肤包可以包括与当前日期相对应静态或动态皮肤。也即是,在日历中,若当前日期设置有换肤日程,则可以触发白板应用程序进行换肤,根据目标皮肤包配置白板应用程序的用户界面,从而完成换肤。
如此,本申请的用户界面配置方法通过日历实现对用户界面的智能换肤,实现在多会议场景、多会议主题下,用户界面能够自动切换为合适的皮肤,能够与会议场景和主题相互响应,提升用户体验。
可以理解地,在从日历中获取当前日期的换肤日程之前,若白板应用程序开启了节日自动换肤功能,则可以在当前日期为节日的情况下,使得白板应用程序的用户界面可以当日期为节日时,自动切换显示为节日皮肤。
具体地,请参阅图3,用户界面配置方法包括:
01:生成节日换肤日程,节日换肤日程包括节日日期对应的节日皮肤包标识;
步骤01包括:
011:在本地存在与节日皮肤包标识对应的节日皮肤包的情况下,根据节日皮肤包的存储路径将节日换肤日程插入日历。
请结合图4,用户界面配置装置10还包括节日换肤模块11。节日换肤模块11用于生成节日换肤日程,节日换肤日程包括节日日期对应的节日皮肤包标识;所述生成节日换肤日程包括在本地存在与节日皮肤包标识对应的节日皮肤包的情况下,根据节日皮肤包的存储路径将节日换肤日程插入日历。
具体地,在日历服务中,可以先判断当天是否是节日,并且判断是否开启了节日自动换肤功能。此处的节日包括中国的传统节日及外国的特殊节日。
然后,在白板应用程序开启节日自动换肤功能且当前日期为节日的情况下,访问云端的服务,获取节日日期对应的节日皮肤包标识,从而生成节日换肤日程。
其中,节日皮肤包标识可以为系统默认设置的数字、符号或其他标识,也可以为用户自行设置的数字、符号或其他标识,在此不作限制。
生成节日换肤日程包括在本地存在与节日皮肤包标识对应的节日皮肤包的情况下,根据节日皮肤包的存储路径将节日换肤日程插入日历,从而实现当前日期为节日时,能够使用户界面自动切换为节日皮肤。其中,本申请的本地指的是终端系统的本地存储器。
可以理解地,本地若存在与节日皮肤包标识对应的节日皮肤包,则可以在本地获取到该节日皮肤包的存储路径,并根据节日皮肤包的存储路径将节日换肤日程插入日历。
如此,本申请可以通过将节日换肤日程插入日历,实现在开启节日自动换肤功能且日历达到节日换肤日程时,用户界面能够自动切换显示为节日皮肤。
可以理解地,判断本地是否存在与节日皮肤包标识对应的节日皮肤包,可以根据节日皮肤包标识判断本地是否已经下载,如果本地已经下载节日皮肤包,则直接根据节日皮肤包的存储路径将节日换肤日程插入日历,如果本地没有下载节日皮肤包,则需要先下载节日皮肤包。
具体地,请参阅图5,步骤01包括:
012:若本地不存在与节日皮肤包标识对应的节日皮肤包,则下载节日皮肤包并存储到本地;
013:根据节日皮肤包的存储路径将节日换肤日程插入日历。
请结合图4,节日换肤模块11用于若本地不存在与节日皮肤包标识对应的节日皮肤包,则下载节日皮肤包并存储到本地;根据节日皮肤包的存储路径将节日换肤日程插入日历。
也即是,在本地不存在与节日皮肤包标识对应的节日皮肤包的情况下,需要先从云端下载节日皮肤包并存储到本地。
节日皮肤包下载到本地后,则可以获取到本地的节日皮肤包的存储路径,从而可以根据节日皮肤包的存储路径形成一条节日换肤日程插入到日历中,进而触发用户界面换肤。
在换肤日程包括节日换肤日程,且当前日期为节日的情况下,请参阅图6,步骤04包括:
041:在获取到节日换肤日程的情况下,根据节日换肤日程对应的存储路径确定目标皮肤包。
请结合图2,确定模块14用于在获取到节日换肤日程的情况下,根据节日换肤日程对应的存储路径确定目标皮肤包。
可以理解地,在本地获取到节日换肤日程的情况下,可以根据节日换肤日程对应的存储路径确定节日皮肤包为目标皮肤包,从而触发白板应用程序的用户界面更换为节日皮肤。
如此,可以在当前日期为节日的情况下,实现对白板应用程序的用户界面自动切换为节日对应的节日皮肤。
此外,本发明的换肤日程不仅仅可以设置为节日皮肤自动切换模式,也可以为用户主动添加换肤日程为白板应用程序的用户界面进行换肤。
具体地,换肤日程包括用户换肤日程,用户换肤日程指的是用户主动通过添加换肤日程所形成的日程。
对应地,请参阅图7,用户界面配置方法包括:
03:生成用户换肤日程,用户换肤日程包括用户选择的皮肤包标识;
步骤03包括:
031:根据用户选择的皮肤包标识对应的皮肤包在本地的存储路径将用户换肤日程添加到日历。
请结合图8,用户界面配置装置10还包括用户换肤模块13。用户换肤模块13用于生成用户换肤日程,用户换肤日程包括用户选择的皮肤包标识;根据用户选择的皮肤包标识对应的皮肤包在本地的存储路径将用户换肤日程添加到日历。
具体地,用户主动在日历中添加换肤日程的动作可以生成用户换肤日程,用户换肤日程中包括用户选择的皮肤包标识。
其中,用户选择的皮肤包标识可以为系统默认设置的数字、符号或其他标识,也可以为用户自行设置的数字、符号或其他标识,在此不作限制。
生成节日换肤日程包括根据用户选择的皮肤包标识对应的皮肤包在本地的存储路径将用户换肤日程添加到日历,从而实现用户主动在日历中添加换肤日程并生成用户换肤日程时,实现在日历达到用户换肤日程时,用户界面自动切换为用户选定的皮肤。其中,本申请的本地指的是终端系统的本地存储器。
可以理解地,本地若存在与用户选择的皮肤包标识对应的皮肤包,则可以在本地获取到该皮肤包的存储路径,并根据该皮肤包的存储路径将节日换肤日程插入日历。
如此,本申请可以通过将用户换肤日程插入日历,实现在日历达到用户换肤日程时,用户界面自动切换为用户选定的皮肤。
请参阅图9,步骤031包括:
0311:在用户选择的皮肤包标识对应的皮肤包为本地皮肤包的情况下,根据本地皮肤包的存储路径将用户换肤日程添加到日历。
请结合图8,用户换肤模块13用于在用户选择的皮肤包标识对应的皮肤包为本地皮肤包的情况下,根据本地皮肤包的存储路径将用户换肤日程添加到日历。
可以理解地,用户打开日历后,可以进入日历的日程编辑页面,若用户在日历的日程编辑页面配置皮肤包地址,若本地已经存在皮肤包,则响应于用户选择的皮肤包标识对应的皮肤包为本地皮肤包的操作,根据本地皮肤包的存储路径将用户换肤日程添加到日历。
如此,用户可以通过本地的皮肤包在日历的日程编辑页面配置皮肤包地址,从而将用户换肤日程添加到日历,使得用户能够在日历中增加用户主动添加的换肤日程,根据用户的主观意愿在日历中选择一个或多个日期为用户界面进行换肤。
当本地不存在皮肤包或没有用户想要的皮肤包,则此时需要从云端下载云端皮肤包,然后将云端皮肤包存储到本地,以将用户换肤日程添加到日历。
具体地,请参阅图10,步骤031包括:
0312:在用户选择的皮肤包标识对应的皮肤包为云端皮肤包的情况下,下载云端皮肤包并存储到本地;
0313:根据云端皮肤包在本地的存储路径将用户换肤日程插入日历。
请结合图8,用户换肤模块13用于在用户选择的皮肤包标识对应的皮肤包为云端皮肤包的情况下,下载云端皮肤包并存储到本地;根据云端皮肤包在本地的存储路径将用户换肤日程插入日历。
也即是,此时本地不存在皮肤包或没有用户想要的皮肤包,则在用户打开日历,进入日程编辑页面配置皮肤包地址时,需要用户从而云端下载云端皮肤包。
对应地,本地可以在用户选择的皮肤包标识对应的皮肤包为云端皮肤包后,下载用户选择的云端皮肤包并存储到本地,然后,根据用户选择的云端皮肤包在本地的存储路径将用户换肤日程插入日历。
如此,在本地不存在皮肤包或没有用户想要的皮肤包,用户可以从云端下载云端皮肤包并存储到本地,再根据用户选择的云端皮肤包在本地的存储路径将用户换肤日程插入日历,以将用户换肤日程添加到日历。
在其他实施方式中,用户还可以通过将外设存储设备的皮肤包复制到本地,然后通过本地的存储路径将用户换肤日程插入日历,以将用户换肤日程添加到日历。
请参阅图11,步骤04包括:
042:在获取到用户换肤日程的情况下,根据用户换肤日程对应的存储路径确定目标皮肤包。
请结合图2,确定模块14用于在获取到用户换肤日程的情况下,根据用户换肤日程对应的存储路径确定目标皮肤包。
可以理解地,在本地获取到用户换肤日程的情况下,可以根据用户换肤日程对应的存储路径确定对应的皮肤包为目标皮肤包,从而触发用户界面在用户主动添加的换肤日程时更换为对应的皮肤。
如此,可以在用户主动添加换肤日程的情况下,也能够在用户换肤日程将用户界面自动切换为对应的皮肤。
在确定目标皮肤包后,下面详细介绍如何根据目标皮肤包配置在用户界面。
具体地,请参阅图12,步骤06包括:
061:确定目标皮肤包对应的应用程序;
062:根据目标皮肤包配置应用程序的用户界面。
请结合图2,配置模块16用于确定目标皮肤包对应的应用程序;根据目标皮肤包配置应用程序的用户界面。
以目标皮肤包对应的应用程序为白板应用程序为例,根据目标皮肤包配置应用程序的用户界面,也即是,可以实现对白板的白板换肤功能。
其中的目标皮肤包是前文所述的根据节日换肤日程或用户换肤日程确定的目标皮肤包。
请参阅图13,步骤062包括:
0621:确定用户界面中需要换肤的控件;
0622:加载目标皮肤包得到控件的目标资源;
0623:根据目标资源替换用户界面对应的宿主包资源,完成对用户界面的配置,宿主包资源为应用程序中用于配置用户界面的资源。
请结合图2,配置模块16用于确定用户界面中需要换肤的控件;加载目标皮肤包得到控件的目标资源;根据目标资源替换用户界面对应的宿主包资源,完成对用户界面的配置,宿主包资源为应用程序中用于配置用户界面的资源。
可以理解地,白板换肤功能主要依赖于皮肤管理模块。皮肤管理模块是白板应用程序的一个子功能。当应用程序为白板应用程序时,本申请的配置模块16相当于白板中的皮肤管理模块。
首先,确定用户界面中需要换肤的控件。其中,需要换肤的控件指的是用户界面支持换肤的所有View视图。其中,View是每个用户界面最基础的元素,出于方便使用和易维护的角度,对这层当中的自定义控件和系统控件做了区别处理。可以理解地,本申请先通过确定用户界面中需要换肤的控件,从而确定用户界面的哪些视图需要进行换肤。
然后,加载目标皮肤包得到控件的目标资源。也即是,在确定用户界面中的需要换肤的1个或多个控件后,可以通过加载目标皮肤包获得与需要换肤的控件相匹配的的目标资源。该目标资源包括与每个控件对应皮肤的类型、颜色和大小等皮肤资源。
最后,根据目标资源替换用户界面对应的宿主包资源,完成对用户界面的配置。其中,宿主包资源为应用程序中用于配置用户界面的资源,也即是,宿主包资源是应用程序中自带的皮肤包资源。在确定本地存储的目标皮肤包对应的目标资源后,可以根据目标资源替换用户界面对应的宿主包资源,从而完成对用户界面的配置,实现换肤操作。
更具体地,下面介绍采集用户界面中需要换肤的控件的具体操作。
请参阅图14,步骤0621包括:
06211:启动用户界面;
06213:构建View视图;
06215:根据自定义的解析器解析View视图的预设资源文件,确定需要换肤的View,并将需要换肤的View和View的属性保存到预设集合,以确定需要换肤的控件。
请结合图2,配置模块16用于启动用户界面;构建View视图;根据自定义的解析器解析View视图的预设资源文件,确定需要换肤的View,并将需要换肤的View和View的属性保存到预设集合,以确定需要换肤的控件。
下面以用户界面为安卓系统的界面为例进行说明。
可以理解地,在用户界面为安卓系统的界面时,对应的活动组件为Activity。可以理解地,Activity是Android四大组件之一,用于展示用户界面,可以用于进行交互。onCreate是Activity的生命周期函数。用户界面为其他系统的界面,则可以根据对应系统的获得组件和布局函数适应性改变进行构建View视图及确定需要换肤的View并存储View,本申请以安卓系统为例进行说明。
首先,本申请可以通过Activity启动用户界面,并在onCreate中调用setContentView函数,用于设置布局,即布局函数为setContentView函数。
然后,在通过布局函数为用户界面设置布局后,可以使用LayoutInflater.inflate实现真正加载布局,调用createViewFromTag函数构建View视图。
接着,根据自定义的解析器解析View视图的预设资源文件,确定需要换肤的View,并将需要换肤的View和View的属性保存到预设集合,以确定需要换肤的控件。
例如,在createViewFromTag函数中,谷歌官方对外提供了自定义的解析器:实体钩(Hook点),即mFactory2对象,开发者可以通过该Hook点,自定义解析布局文件xml的方法以确定需要换肤的View,也即是,构建实体钩解析View视图的预设资源文件以确定需要换肤的View,预设资源文件即为布局文件xml。
最后,在确定需要换肤的View后,保存需要换肤的View和View的属性到预设集合。View的属性包括View的大小、颜色和所属类型,用于详细描述该View的特征,该预设集合指的是本地专用的存储需要换肤的View和View属性的集合,从而确定需要换肤的控件。
请参阅图15,Android加载资源的流程图15所示,需要创建皮肤包的资源Resources对象。通过皮肤包的资源对象,即可获取皮肤包的换肤资源,实现根据目标皮肤包加载得到目标资源。
在采集完用户界面中需要换肤的界面并加载目标皮肤包得到控件的目标资源后,下面介绍如何根据目标资源替换用户界面对应的宿主包资源,完成对用户界面的配置。
具体地,请参阅图16,步骤0623包括:
06231:从预设集合读取需要换肤的View的属性;
06232:根据需要换肤的View的属性对应的宿主包资源标识获取资源类型和名称;
06233:根据资源类型和名称获取目标皮肤包中对应的目标资源标识;
06234:根据目标资源标识获取目标资源文件;
06235:根据目标资源文件更新对应的View的属性,完成对用户界面的配置。
请结合图2,配置模块16用于从预设集合读取需要换肤的View的属性;根据需要换肤的View的属性对应的宿主包资源标识获取资源类型和名称;根据资源类型和名称获取目标皮肤包中的对应的目标资源标识;根据目标资源标识获取目标资源文件;根据目标资源文件更新对应的View的属性,完成对用户界面的配置。
首先,从预设集合读取需要换肤的View的属性。例如,可以以循环遍历的方式从预设集合读取需要换肤的View的属性。可以理解地,通过循环多次遍历预设集合读取需要换肤的View的属性,能够更为全面地实时获取读取预设集合中存储的需要换肤的View的属性。
然后,根据需要换肤的View的属性对应的宿主包(Android applicationpackage,Apk)资源(Resources)标识(ID)获取资源类型和名称。
具体地,请参阅图17,图17为根据宿主包的资源ID获得目标皮肤包中的目标资源ID的原理流程示意图。在未换肤的情况下,可以通过mView.setBackground(mainResources.getDrawable(main_res_id))函数设置宿主包资源(mView)的背景图为一个ID等于main_res_id的图片。该函数中mainResources是宿主Apk的资源(Resources)对象,main_res_id是宿主Apk的图片id,即main res id为对应的宿主包资源标识。此时,可以通过该宿主包资源标识main_res_id获取该id对应的资源类型为Drawable,名称为Test.png。
然后,可以根据获取的类型和名称在皮肤插件里面查找一摸一样的目标资源。皮肤插件可存放于云端服务和外设存储上。皮肤插件,本质上也是一个Apk,包含了需要替换的资源文件,如图片资源、布局颜色、字体、文字大小、文字颜色、状态栏和导航栏颜色等,皮肤插件也即是目标皮肤包。
需要说明的是,本申请的硬件方面包括终端系统、云端服务器和外设存储设备。终端系统包括具有Android系统的电子设备,本申请以应用程序为白板应用程序为例,该电子设备安装有白板应用程序和日历。云端服务器用于存储皮肤插件,用于可以上传和下载皮肤插件,该设备可选。外设存储设备例如可以为U盘,可以将外设存储设备上的皮肤插件,复制到终端系统本地磁盘中。
接着,可以获取到皮肤插件中该目标资源标识为skin_res_id,即目标资源ID为skin_res_id。最后,调用函数mView.setBackground(skinResources.getDrawable(skin_res_id))来设置背景,注意此时的skinResources是皮肤插件的Resources对象,skin_res_id是皮肤插件的图片id。
也即是,先根据资源类型和名称获取目标皮肤包的对应的目标资源标识,再根据目标资源标识获取目标资源文件,根据目标资源文件更新对应的View的属性,完成对用户界面的配置。
需要说明的是,本申请的生成目标皮肤包的流程与编译普通的Android应用流程相同。首先,需要将替换的包括安装包的皮肤文件放在Android的资源文件Res目录下。然后,编译需要替换的Apk,会自动生成一个以.apk结尾的可安装文件。最后,为了避免用户误点击,因此将该以.apk结尾的可安装文件修改为以.skin结尾的文件,该以.skin结尾的文件即为目标皮肤包。
请参阅图18,本申请还提供一种电子设备100。电子设备100包括处理器110和存储器120,存储器120存储有计算机程序121,计算机程序121被处理器10执行时实现上述任意一项实施例所述的用户界面配置方法。该电子设备100包括会议一体机、电脑、手机和ipad等设备。
本申请的电子设备100应用上述的用户界面配置方法通过日历实现对用户界面的智能换肤,实现在多会议场景、多会议主题下,用户界面能够切换为合适的皮肤,能够与会议场景和主题相互响应,提升用户体验。
请参阅图19,本发明还提供一种包含有计算机程序的非易失性计算机可读存储介质200。当计算机程序210被一个或多个处理器220执行时,实现上述任意实施例所述的用户界面配置方法。
例如,计算机程序210被处理器220执行时实现以下用户界面配置方法的步骤:
02:从日历中获取当前日期的换肤日程;
04:根据获取到的换肤日程确定目标皮肤包;
06:根据目标皮肤包配置用户界面。
可以理解,计算机程序210包括计算机程序代码。计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读存储介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、以及软件分发介质等。
本申请的计算机可读存储介质200应用上述的用户界面配置方法通过日历实现对用户界面的智能换肤,实现在多会议场景、多会议主题下,用户界面能够切换为合适的皮肤,能够与会议场景和主题相互响应,提升用户体验。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (15)
1.一种用户界面配置方法,其特征在于,包括:
从日历中获取当前日期的换肤日程;
根据获取到的所述换肤日程确定目标皮肤包;
根据所述目标皮肤包配置所述用户界面。
2.根据权利要求1所述的用户界面配置方法,其特征在于,所述用户界面配置方法包括:
生成节日换肤日程,所述节日换肤日程包括节日日期对应的节日皮肤包标识;
所述生成节日换肤日程,包括:
在本地存在与所述节日皮肤包标识对应的节日皮肤包的情况下,根据所述节日皮肤包的存储路径将所述节日换肤日程插入所述日历。
3.根据权利要求2所述的用户界面配置方法,其特征在于,所述生成节日换肤日程,包括:
若本地不存在与所述节日皮肤包标识对应的所述节日皮肤包,则下载所述节日皮肤包并存储到本地;
根据所述节日皮肤包的存储路径将所述节日换肤日程插入所述日历。
4.根据权利要求2或3所述的用户界面配置方法,其特征在于,所述根据获取到的所述换肤日程确定目标皮肤包,包括:
在获取到所述节日换肤日程的情况下,根据所述节日换肤日程对应的存储路径确定所述目标皮肤包。
5.根据权利要求1所述的用户界面配置方法,其特征在于,所述用户界面配置方法包括:
生成用户换肤日程,所述用户换肤日程包括用户选择的皮肤包标识;
所述生成用户换肤日程,包括:
根据用户选择的皮肤包标识对应的皮肤包在本地的存储路径将所述用户换肤日程添加到所述日历。
6.根据权利要求5所述的用户界面配置方法,其特征在于,所述根据用户选择的皮肤包标识对应的皮肤包在本地的存储路径将所述用户换肤日程添加到所述日历,包括:
在用户选择的皮肤包标识对应的皮肤包为本地皮肤包的情况下,根据所述本地皮肤包的存储路径将所述用户换肤日程添加到所述日历。
7.根据权利要求5所述的用户界面配置方法,其特征在于,所述根据用户选择的皮肤包标识对应的皮肤包在本地的存储路径将所述用户换肤日程添加到所述日历,包括:
在用户选择的皮肤包标识对应的皮肤包为云端皮肤包的情况下,下载所述云端皮肤包并存储到本地;
根据所述云端皮肤包在本地的存储路径将所述用户换肤日程插入所述日历。
8.根据权利要求5、6或7所述的用户界面配置方法,其特征在于,所述根据获取到的换肤日程确定目标皮肤包,包括:
在获取到所述用户换肤日程的情况下,根据所述用户换肤日程对应的存储路径确定所述目标皮肤包。
9.根据权利要求1所述的用户界面配置方法,其特征在于,所述根据所述目标皮肤包配置所述用户界面,包括:
确定所述目标皮肤包对应的应用程序;
根据所述目标皮肤包配置所述应用程序的用户界面。
10.根据权利要求1所述的用户界面配置方法,其特征在于,所述根据所述目标皮肤包配置所述用户界面,包括:
确定所述用户界面中需要换肤的控件;
加载所述目标皮肤包得到所述控件的目标资源;
根据所述目标资源替换所述用户界面对应的宿主包资源,完成对所述用户界面的配置,所述宿主包资源为应用程序中用于配置所述用户界面的资源。
11.根据权利要求10所述的用户界面配置方法,其特征在于,所述确定所述用户界面中需要换肤的控件,包括:
启动所述用户界面;
构建View视图;
根据自定义的解析器解析所述View视图的预设资源文件,确定需要换肤的View,并将需要换肤的View和View的属性保存到预设集合,以确定需要换肤的控件。
12.根据权利要求10所述的用户界面配置方法,其特征在于,所述根据所述目标资源替换所述用户界面对应的宿主包资源,完成对所述用户界面的配置,包括:
从所述预设集合读取需要换肤的View的属性;
根据需要换肤的View的属性对应的所述宿主包资源标识获取资源类型和名称;
根据所述资源类型和名称获取所述目标皮肤包中对应的目标资源标识;
根据所述目标资源标识获取目标资源文件;
根据所述目标资源文件更新对应的View的属性,完成对所述用户界面的配置。
13.一种用户界面配置装置,其特征在于,包括:
获取模块,用于从日历中获取当前日期的换肤日程;
确定模块,用于根据获取到的所述换肤日程确定目标皮肤包;
配置模块,用于根据所述目标皮肤包配置所述用户界面。
14.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时实现权利要求1-12中任一项所述的用户界面配置方法。
15.一种包含计算机程序的非易失性计算机可读存储介质,其特征在于,当所述计算机程序被一个或多个处理器执行时,使得所述处理器执行权利要求1-12中任一项所述的用户界面配置方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210767311.5A CN115080171A (zh) | 2022-06-30 | 2022-06-30 | 用户界面配置方法及其装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210767311.5A CN115080171A (zh) | 2022-06-30 | 2022-06-30 | 用户界面配置方法及其装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115080171A true CN115080171A (zh) | 2022-09-20 |
Family
ID=83257431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210767311.5A Pending CN115080171A (zh) | 2022-06-30 | 2022-06-30 | 用户界面配置方法及其装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115080171A (zh) |
-
2022
- 2022-06-30 CN CN202210767311.5A patent/CN115080171A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105867947B (zh) | 预置应用程序升级后的数据处理方法及装置 | |
CN102520987B (zh) | 应用程序在线体验与安装方法、装置、服务器及管理系统 | |
CN102622241B (zh) | 一种软件升级方法及装置 | |
CN108964968B (zh) | 一种容器云环境下的服务接入管理方法和系统 | |
CN105138226B (zh) | 一种智能终端的桌面管理方法和装置 | |
CN108228293B (zh) | 一种界面皮肤切换方法及装置 | |
US20100093396A1 (en) | Systems and methods for storing or performing functions within removable memory, such as a subscriber identity module of a mobile device | |
CN103559065B (zh) | 一种ota升级的方法和系统 | |
CN110968280B (zh) | 应用布局还原方法、装置、设备及存储介质 | |
CN110945480A (zh) | 用于更新和加载应用程序的系统和方法 | |
CN109660372B (zh) | 一种sdn的业务配置的方法及装置 | |
CN105630932B (zh) | 一种智能终端的文件管理方法和装置 | |
US20210064351A1 (en) | Packaging support system and packaging support method | |
CN104731602A (zh) | 一种分离安卓镜像烧录流程的方法 | |
CN103716346A (zh) | 一种安卓手机客户端上应用的管理方法和装置 | |
CN110908734A (zh) | 基于插件化的应用组合方法、装置、终端设备及存储介质 | |
GB2539758A (en) | Techniques for evaluating applications through use of an auxiliary application | |
CN110955449B (zh) | 客户端的灰度发布方法及装置 | |
US20170105041A1 (en) | Method and device of interactive function card of smart television | |
CN116483470A (zh) | 一种获取配置信息的方法、电子设备及介质 | |
CN112015651A (zh) | 数据处理方法及装置 | |
CN102968244A (zh) | 资源预览图的获取方法、装置以及设备 | |
CN115080171A (zh) | 用户界面配置方法及其装置、电子设备和存储介质 | |
KR101930056B1 (ko) | 보안 정책을 지원하는 단말 관리 방법 및 장치 | |
CN110727416B (zh) | 开发框架的生成方法及相关装置 |
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 |