System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及界面显示,特别是涉及弹窗显示方法、装置、设备及存储介质。
技术介绍
1、为方便用户切换和浏览不同的模块,app的首页通常需要呈现多个不同的功能或内容模块,因此,app的首页经常是存在多个标签,以将这些不同的功能或内容分类展示在不同的标签页中,而标签的切换是通过一个activity承载不同的fragment来实现的。为了保持用户界面的上下文一致性和符合用户期望,通常需要将弹窗在固定的标签上弹出。
2、但是在快速切换标签时,弹窗会展现在其他不是预期内的标签上,即出现弹窗乱弹的现象。
技术实现思路
1、本申请提供了弹窗显示方法、装置、设备及存储介质,能够改善弹窗乱弹的现象。
2、第一方面,本申请提供了一种弹窗显示方法,该方法包括:
3、获取目标界面的当前标签;
4、在弹窗的展示回调中判断当前标签与预期标签是否相同;
5、若当前标签与预期标签相同,则将目标界面中多标签控件设定为关闭状态,并在当前标签对应的弹窗绘制到屏幕上时才将多标签控件设定为打开状态;
6、若当前标签与预期标签不相同,则关闭当前标签中显示的弹窗,并将当前显示的弹窗重新放回弹窗队列中。
7、其进一步的技术方案为,若当前标签与预期标签不相同,则关闭当前标签中显示的弹窗,包括:
8、在弹窗队列中创建目标弹窗类,其中,目标弹窗类继承弹窗队列中的弹窗;
9、在目标弹窗类中添加接口名称以及接口中定义的弹窗显示方法和弹窗
10、在当前标签与预期标签不相同时,调用目标弹窗类中的弹窗消失方法。
11、其进一步的技术方案为,在目标弹窗类中设置展示回调的接口。
12、其进一步的技术方案为,在目标弹窗类中设置展示回调的接口,包括:
13、在目标弹窗类中设置类对象,类对象继承目标弹窗类的展示监听器。
14、其进一步的技术方案为,在响应多标签的点击事件里设置一个标记位,标记位包括启用状态和禁用状态,将目标界面中多标签控件设定为关闭状态,包括:
15、将标记位设为启用状态;
16、将多标签控件设定为打开状态,包括:
17、将标记位设为禁用状态。
18、其进一步的技术方案为,方法还包括:
19、在预设编舞者类中添加帧回调的操作;
20、判断帧回调的次数与预设次数的关系,若帧回调次数满足预设次数,则表明当前标签对应的弹窗绘制到屏幕上。
21、其进一步的技术方案为,预设次数范围为1-3。
22、第二方面,本申请提供了一种弹窗显示装置,包括用于执行如本申请上述任一项方法的单元。
23、第三方面,本申请提供了一种弹窗显示设备,该弹窗显示设备包括显示器和控制器,控制器用于执行如本申请上述任一项方法的步骤。
24、第四方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,计算机程序在被控制器执行时,用于实现如上述的弹窗显示方法。
25、本申请的有益效果是:区别于现有技术的情况,本申请通过获取目标界面的当前标签,将当前标签与预期标签进行判断,在当前标签与预期标签相同时,则将目标界面中多标签控件设定为关闭状态,以便及时阻断用户点击多标签控件,避免在弹窗还没绘制完成时,因用户点击多标签控件进行标签切换,导致当前标签对应的弹窗出现在切换后的标签上,并且在当前标签与预期标签不相同时,则关闭当前标签中显示的弹窗,并将当前显示的弹窗重新放回弹窗队列中,以使重新放回的弹窗等到出现对应的正确标签时再进行展示。
26、另外,由于消息队列会添加同步屏障即将同步消息进行阻塞,使得异步消息能够优先执行,而异步消息中包含的用户切标签点击事件是需要系统内部进行处理的,程序员无法进行干涉,也就是说,弹窗出现乱弹的现象一般出现在异步消息的执行中。
27、而由于弹窗进行展示回调时,可以表明异步消息已经执行完毕,因此,本申请通过在弹窗的展示回调的时机中对当前标签与预期标签进行判断,可以保证弹窗出现在正确的标签上,避免在触发弹窗展现的时机进行判断,因未能保证异步消息执行完毕,导致在异步消息执行过程中重新出现用户切标签点击事件引起的弹窗乱弹问题。
本文档来自技高网...【技术保护点】
1.一种弹窗显示方法,其特征在于,所述方法包括:
2.根据权利要求1所述的弹窗显示方法,其特征在于,所述若所述当前标签与所述预期标签不相同,则关闭所述当前标签中显示的弹窗,包括:
3.根据权利要求2所述的弹窗显示方法,其特征在于,在所述目标弹窗类中设置展示回调的接口。
4.根据权利要求3所述的弹窗显示方法,其特征在于,所述在所述目标弹窗类中设置展示回调的接口,包括:
5.根据权利要求1所述的弹窗显示方法,其特征在于,在响应多标签的点击事件里设置一个标记位,所述标记位包括启用状态和禁用状态,所述将所述目标界面中多标签控件设定为关闭状态,包括:
6.根据权利要求1所述的弹窗显示方法,其特征在于,所述方法还包括:
7.根据权利要求1所述的弹窗显示方法,其特征在于,所述预设次数范围为1-3。
8.一种弹窗显示装置,其特征在于,包括用于执行如权利要求1-7任一项所述方法的单元。
9.一种弹窗显示设备,其特征在于,所述弹窗显示设备包括:显示器,和控制器,所述控制器,用于执行如权利要求1-7任一项所
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被控制器执行时实现如权利要求1-7任一项所述的方法的步骤。
...【技术特征摘要】
1.一种弹窗显示方法,其特征在于,所述方法包括:
2.根据权利要求1所述的弹窗显示方法,其特征在于,所述若所述当前标签与所述预期标签不相同,则关闭所述当前标签中显示的弹窗,包括:
3.根据权利要求2所述的弹窗显示方法,其特征在于,在所述目标弹窗类中设置展示回调的接口。
4.根据权利要求3所述的弹窗显示方法,其特征在于,所述在所述目标弹窗类中设置展示回调的接口,包括:
5.根据权利要求1所述的弹窗显示方法,其特征在于,在响应多标签的点击事件里设置一个标记位,所述标记位包括启用状态和禁用状态,所述将所述目标界面中多标签控件设定为关...
【专利技术属性】
技术研发人员:申为航,
申请(专利权)人:北京爱奇艺科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。