Skip to content

该项目是为了解决 MIUI系统上,Toast弹窗被禁止导致 无法正确提示用户的问题。该项目中,研究了并模仿了系统原生Toast的实现原理,写出一个 基于Dialog的Toast实现(为何要基于Dialog而不基于原生Toast的实现,具体原因请看代码注释)。主要模仿了Toast的两大方面:1.接口,该项目所实现的Toast,公共接口完全和原生Toast的接口一致,便于对原生Toast的替换;2.Toast消息队列的维护,这是核心的地方,因为这决定了一个Toast的出现时间和消失时间,以及当有多个Toast时,对每个Toast的出现顺序做控制。

tuzhenyu/MoaToast

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

About

该项目是为了解决 MIUI系统上,Toast弹窗被禁止导致 无法正确提示用户的问题。该项目中,研究了并模仿了系统原生Toast的实现原理,写出一个 基于Dialog的Toast实现(为何要基于Dialog而不基于原生Toast的实现,具体原因请看代码注释)。主要模仿了Toast的两大方面:1.接口,该项目所实现的Toast,公共接口完全和原生Toast的接口一致,便于对原生Toast的替换;2.Toast消息队列的维护,这是核心的地方,因为这决定了一个Toast的出现时间和消失时间,以及当有多个Toast时,对每个Toast的出现顺序做控制。

Topics

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages