一种弹出窗口管理方法及装置制造方法及图纸

技术编号:19277352 阅读:27 留言:0更新日期:2018-10-30 17:57
本发明专利技术实施例提出一种弹出窗口管理方法及装置,涉及界面显示方法技术领域。该方法及装置通过获取预建立的弹出窗口列表,弹出窗口列表包括多个按时间顺序排列的弹出窗口,并按照弹出窗口列表的顺序,依次依据通过判断Activity是否可见而生成的判断结果、每个弹出窗口的初始状态类型及当前窗口状态信息确定每个弹出窗口的实际状态类型及实际窗口状态信息,最后依据每个弹出窗口的实际窗口状态信息及每个弹出窗口的实际状态类型显示、移除或隐藏每个弹出窗口;由于是有序地对列表中的每个弹出窗口进行统一处理后,再确定每个弹出窗口显示与否,从而可以在Activity处于后台的时候弹出,避免了弹出窗口上有PopupWindow会导致程序崩溃的问题。

A pop-up window management method and device

The embodiment of the invention provides a pop-up window management method and device, which relates to the technical field of interface display method. The method and the device acquire a pre-established list of pop-up windows, and the list of pop-up windows includes a number of pop-up windows arranged in chronological order. According to the order of the list of pop-up windows, the result of judging whether the activity is visible, the initial state type of each pop-up window and the current window shape are generated in turn by judging whether the activity is visible or not. The state information determines the actual state type and the actual state information of each pop-up window, and finally displays, removes or hides each pop-up window according to the actual state information of each pop-up window and the actual state type of each pop-up window; because each pop-up window in the list is orderly processed uniformly Then, determine whether each pop-up window is displayed or not, so you can pop-up when Activity is in the background, avoiding the pop-up window on the Popup Window will cause the problem of program crash.

【技术实现步骤摘要】
一种弹出窗口管理方法及装置
本专利技术涉及界面显示方法
,具体而言,涉及一种弹出窗口管理方法及装置。
技术介绍
在安卓应用开发中,弹出二级界面的方式一般是跳转Activity、PopupWindow、Dialog或者DialogFragment。但使用Activity跳转会导致系统反应慢,并会导致二级界面难以管理;而使用PopupWindow做业务逻辑的弹出式二级页面开发时,很容易出现因为无效token导致系统崩溃的问题;使用Dialog做弹出式二级界面有生命周期不全面的问题;而使用DialogFragment时,不能在Activity处于后台的时候尝试弹出界面,否则会导致程序崩溃。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种弹出窗口管理方法及装置,以解决上述问题。为了实现上述目的,本专利技术实施例采用的技术方案如下:第一方面,本专利技术实施例提供了一种弹出窗口管理方法,所述弹出窗口管理方法包括:获取预建立的弹出窗口列表,所述弹出窗口列表包括多个按时间顺序排列的弹出窗口;按照所述弹出窗口列表的顺序,依次依据通过判断Activity是否可见而生成的判断结果、每个所述弹出窗口的初始状态类型及当前窗口状态信息确定每个所述弹出窗口的实际状态类型及实际窗口状态信息;依据实际窗口状态信息及每个所述弹出窗口的实际状态类型显示、移除或隐藏每个所述弹出窗口。进一步地,所述按照所述弹出窗口列表的顺序,依次依据通过判断Activity是否可见而生成的判断结果、每个所述弹出窗口的初始状态类型及当前窗口状态信息确定每个所述弹出窗口的实际状态类型及实际窗口状态信息的步骤包括:当所述弹出窗口的状态类型为待添加类型或隐藏类型、所述判断结果为所述Activity可见且所述初始窗口状态信息与第一预设标识匹配时,利用预设定的算法发起显示窗口操作事务,确定所述实际窗口状态信息为第二预设标识且所述弹出窗口的实际状态类型为显示类型。进一步地,所述按照所述弹出窗口列表的顺序,依次依据通过判断Activity是否可见而生成的判断结果、每个所述弹出窗口的初始状态类型及当前窗口状态信息确定每个所述弹出窗口的实际状态类型及实际窗口状态信息的步骤还包括:当所述弹出窗口的状态类型为显示类型、所述判断结果为所述Activity可见且所述窗口状态信息与第一预设标识不匹配时,利用预设定的算法发起隐藏窗口操作事务,确定所述弹出窗口的实际状态类型为隐藏类型。进一步地,所述按照所述弹出窗口列表的顺序,依次依据通过判断Activity是否可见而生成的判断结果、每个所述弹出窗口的初始状态类型及当前窗口状态信息确定每个所述弹出窗口的实际状态类型及实际窗口状态信息的步骤还包括:当所述弹出窗口的状态类型为待删除类型且所述判断结果为所述Activity可见时,利用预设定的算法发起移除窗口操作事务。进一步地,所述依据实际窗口状态信息及每个所述弹出窗口的实际状态类型显示、移除或隐藏每个所述弹出窗口的步骤包括:当所述窗口状态信息与第二预设标识匹配时,将预建立的弹出窗口容器的显示属性设置为显示类型以显示所述实际状态类型为显示类型的所述弹出窗口;当所述窗口状态信息与第二预设标识不匹配时,将预建立的弹出窗口容器的显示属性设置为隐藏类型以隐藏所述初始状态类型为显示类型的弹出窗口。进一步地,所述弹出窗口管理方法还包括:判断是否存在弹出窗口操作事务,其中,所述弹出窗口操作事务包括显示窗口操作事务、隐藏窗口操作事务及移除窗口操作事务;当存在所述弹出窗口操作事务时,隐藏虚拟键盘。进一步地,所述弹出窗口管理方法还包括:判断Activity是否可见;当所述Activity可见时,提交弹出窗口操作事务。第二方面,本专利技术实施例还提供了一种弹出窗口管理装置,所述弹出窗口管理装置包括:获取单元,用于获取预建立的弹出窗口列表,所述弹出窗口列表包括多个按时间顺序排列的弹出窗口;状态确定单元,用于按照所述弹出窗口列表的顺序,依次依据通过判断Activity是否可见而生成的判断结果、每个所述弹出窗口的初始状态类型及当前窗口状态信息确定每个所述弹出窗口的实际状态类型及实际窗口状态信息;显示单元,用于依据实际窗口状态信息及每个所述弹出窗口的实际状态类型显示、移除或隐藏每个所述弹出窗口。进一步地,所述状态确定单元还用于当所述弹出窗口的状态类型为待添加类型或隐藏类型、所述判断结果为所述Activity可见且所述初始窗口状态信息与第一预设标识匹配时,利用预设定的算法发起显示窗口操作事务,确定所述实际窗口状态信息为第二预设标识且所述弹出窗口的实际状态类型为显示类型。进一步地,所述状态确定单元还用于当所述弹出窗口的状态类型为显示类型、所述判断结果为所述Activity可见且所述窗口状态信息与第一预设标识不匹配时,利用预设定的算法发起隐藏窗口操作事务,确定所述弹出窗口的实际状态类型为隐藏类型。本专利技术实施例提供的一种弹出窗口管理方法及装置,通过获取预建立的弹出窗口列表,弹出窗口列表包括多个按时间顺序排列的弹出窗口,并按照弹出窗口列表的顺序,依次依据通过判断Activity是否可见而生成的判断结果、每个弹出窗口的初始状态类型及当前窗口状态信息确定每个弹出窗口的实际状态类型及实际窗口状态信息,最后依据每个弹出窗口的实际窗口状态信息及每个弹出窗口的实际状态类型显示、移除或隐藏每个弹出窗口;由于是有序地对列表中的每个弹出窗口进行统一处理后,再确定每个弹出窗口显示与否,从而可以在Activity处于后台的时候弹出,避免了弹出窗口上有PopupWindow会导致程序崩溃的问题,并且使得弹出窗口具有完整的生命周期,可以方便的实现页面数据刷新处理。为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1示出了本专利技术实施例提供的用户终端的功能框图。图2示出了本专利技术实施例提供的弹出窗口管理方法的流程图。图3示出了图2中步骤S203的具体流程图。图4示出了本专利技术实施例提供的弹出窗口管理方法的第二种流程图。图5示出了本专利技术实施例提供的弹出窗口管理方法的第三种流程图。图6示出了本专利技术实施例提供的弹出窗口管理装置的功能模块图。图标:100-用户终端;101-存储器;102-存储控制器;103-处理器;104-外设接口;105-射频单元;106-触控屏幕;200-弹出窗口管理装置;210-获取单元;220-状态确定单元;230-显示单元;240-判断单元;250-键盘隐藏单元;260-操作事务提交单元。具体实施方式下面将结合本专利技术实施例中附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本专利技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本专利技术的实施例的详细描述并非旨在限制要求保护的本专利技术的范围,而是仅仅表示本专利技术的选定实施例。基于本本文档来自技高网...

【技术保护点】
1.一种弹出窗口管理方法,其特征在于,所述弹出窗口管理方法包括:获取预建立的弹出窗口列表,所述弹出窗口列表包括多个按时间顺序排列的弹出窗口;按照所述弹出窗口列表的顺序,依次依据通过判断Activity是否可见而生成的判断结果、每个所述弹出窗口的初始状态类型及当前窗口状态信息确定每个所述弹出窗口的实际状态类型及实际窗口状态信息;依据实际窗口状态信息及每个所述弹出窗口的实际状态类型显示、移除或隐藏每个所述弹出窗口。

【技术特征摘要】
1.一种弹出窗口管理方法,其特征在于,所述弹出窗口管理方法包括:获取预建立的弹出窗口列表,所述弹出窗口列表包括多个按时间顺序排列的弹出窗口;按照所述弹出窗口列表的顺序,依次依据通过判断Activity是否可见而生成的判断结果、每个所述弹出窗口的初始状态类型及当前窗口状态信息确定每个所述弹出窗口的实际状态类型及实际窗口状态信息;依据实际窗口状态信息及每个所述弹出窗口的实际状态类型显示、移除或隐藏每个所述弹出窗口。2.根据权利要求1所述的弹出窗口管理方法,其特征在于,所述按照所述弹出窗口列表的顺序,依次依据通过判断Activity是否可见而生成的判断结果、每个所述弹出窗口的初始状态类型及当前窗口状态信息确定每个所述弹出窗口的实际状态类型及实际窗口状态信息的步骤包括:当所述弹出窗口的状态类型为待添加类型或隐藏类型、所述判断结果为所述Activity可见且所述初始窗口状态信息与第一预设标识匹配时,利用预设定的算法发起显示窗口操作事务,确定所述实际窗口状态信息为第二预设标识且所述弹出窗口的实际状态类型为显示类型。3.根据权利要求1所述的弹出窗口管理方法,其特征在于,所述按照所述弹出窗口列表的顺序,依次依据通过判断Activity是否可见而生成的判断结果、每个所述弹出窗口的初始状态类型及当前窗口状态信息确定每个所述弹出窗口的实际状态类型及实际窗口状态信息的步骤还包括:当所述弹出窗口的状态类型为显示类型、所述判断结果为所述Activity可见且所述窗口状态信息与第一预设标识不匹配时,利用预设定的算法发起隐藏窗口操作事务,确定所述弹出窗口的实际状态类型为隐藏类型。4.根据权利要求1所述的弹出窗口管理方法,其特征在于,所述按照所述弹出窗口列表的顺序,依次依据通过判断Activity是否可见而生成的判断结果、每个所述弹出窗口的初始状态类型及当前窗口状态信息确定每个所述弹出窗口的实际状态类型及实际窗口状态信息的步骤还包括:当所述弹出窗口的状态类型为待删除类型且所述判断结果为所述Activity可见时,利用预设定的算法发起移除窗口操作事务。5.根据权利要求1所述的弹出窗口管理方法,其特征在于,所述依据实际窗...

【专利技术属性】
技术研发人员:赵侠丁健卢伟
申请(专利权)人:成都六零加信息技术有限公司
类型:发明
国别省市:四川,51

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

1