[发明专利]一种Toast设计方法、存储介质、电子设备及系统有效
申请号: | 201810023297.1 | 申请日: | 2018-01-10 |
公开(公告)号: | CN110018813B | 公开(公告)日: | 2022-12-02 |
发明(设计)人: | 张磊;张文明;陈少杰 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/30 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 张凯 |
地址: | 430000 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 toast 设计 方法 存储 介质 电子设备 系统 | ||
本发明公开了一种Toast设计方法、存储介质、电子设备及系统,涉及移动互联领域,包括定义一个类,并在定义的类中定义获取对象方法,所述获取对象方法用于当前线程获取定义的类;在定义的类的构造函数中定义一个context对象;当需要进行Toast显示时,定义的类被当前线程获取,然后判断当前线程是主线程还是子线程,若是主线程,则基于定义类的构造函数中的context对象构造一系统Toast对象来显示Toast内容;若是子线程,则子线程通过工具类Handler向主线程的消息循环中发送一条空消息,主线程接收消息并调用主线程显示Toast的方式显示Toast内容。本发明能够扩展系统主进程和子进程对于Toast显示的兼容性。
技术领域
本发明涉及移动互联领域,具体涉及一种Toast设计方法、存储介质、电子设备及系统。
背景技术
在Android开发过程中,Toast是一种常见的提示控件,用于进行信息的提示作用。但在实际的应用过程中,Toast的显示使用的缺陷就是必须在主线程中进行使用,若在子线程中进行使用则会导致系统运行的异常,从而Toast的使用便具有很大的局限性。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种Toast设计方法,扩展系统主进程和子进程对于Toast显示的兼容性。
为达到以上目的,本发明采取的技术方案是,包括:
定义一个类,并在定义的类中定义获取对象方法,所述获取对象方法用于当前线程获取定义的类;
在定义的类的构造函数中定义一个context对象;
当需要进行Toast显示时,定义的类被当前线程获取,然后判断当前线程是主线程还是子线程,若是主线程,则基于定义类的构造函数中的context对象构造一系统Toast对象来显示Toast内容;若是子线程,则
子线程通过工具类Handler向主线程的消息循环中发送一条空消息,主线程接收消息并调用主线程显示Toast的方式显示Toast内容。
在上述技术方案的基础上,
所述获取对象方法为公有方法,且将该取对象方法声明成静态方法。
所述context对象为应用级的。
在上述技术方案的基础上,当当前线程为子线程时,子线程通过工具类Handler向主线程的消息循环中发送一条空消息,主线程接收消息,然后基于定义类的构造函数中的context对象构造一系统Toast对象来显示Toast内容。
在上述技术方案的基础上,对于当前线程是主线程还是子线程的判断,具体的:
定义一异常捕获代码块;
在异常捕获代码块中弹出一内容为空且背景透明的Toast;
若内容为空且背景透明的Toast的弹出成功执行,则当前线程为主线程,若内容为空且背景透明的Toast的弹出执行失败,则当前线程为子线程。
在上述技术方案的基础上,所述定义的类中还定义有显示方法,当基于定义类的构造函数中的context对象构造一系统Toast对象完成后,通过显示方法来显示构造的系统Toast对象的Toast内容。
本发明还提供一种存储介质,该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述所述的方法。
本发明还提供一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述所述的方法。
本发明还提供一种Toast设计系统,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810023297.1/2.html,转载请声明来源钻瓜专利网。