vincent-series / smart-show

622 stars 79 forks source link

代码里连续调用 SmartToast.show(); 会无法toast提示 #26

Open qinqinxiaocai opened 5 years ago

qinqinxiaocai commented 5 years ago

SmartToast.show("1"); SmartToast.show("2"); SmartToast.show("3");

vincent-series commented 5 years ago

你好,你说的是没有任何Toast显示么?我们内部进行了优化,像这种代码连续调用(毫秒级),前两个信息是会被覆盖的,只会显示最后一条,不会像系统那样,连续弹出三个Toast,体验非常差。一般连续弹出Toast都是响应用户动作时,用户连续触发造成,这种往往提示信息不发生改变,覆盖掉以前的,这种体验是良好的。 所以,你是哪一种情况?如果最后只弹出了“3”是正常的,如果什么都没有弹出,麻烦请把你设备的品牌及及其android系统版本发给我,我进一步查验。谢谢🙏

qinqinxiaocai commented 5 years ago

你好,你说的是没有任何Toast显示么?我们内部进行了优化,像这种代码连续调用(毫秒级),前两个信息是会被覆盖的,只会显示最后一条,不会像系统那样,连续弹出三个Toast,体验非常差。一般连续弹出Toast都是响应用户动作时,用户连续触发造成,这种往往提示信息不发生改变,覆盖掉以前的,这种体验是良好的。 所以,你是哪一种情况?如果最后只弹出了“3”是正常的,如果什么都没有弹出,麻烦请把你设备的品牌及及其android系统版本发给我,我进一步查验。谢谢🙏

华为p10 pro EMUI版本 9.0.0 系统版本:android 9.0

vincent-series commented 5 years ago

你好,非常抱歉,最近公司业务繁忙,今天才有时间来解决该问题。 经过我的排查发现,华为9.0以上系统和9.0以下系统有所不同,9.0系统本身已经对Toast进行了优化,例如调用原生Toast: Toast.makeText(this,"1",Toast.LENGTH_LONG).show(); Toast.makeText(this,"2",Toast.LENGTH_LONG).show(); Toast.makeText(this,"3",Toast.LENGTH_LONG).show(); 在华为9.0以上系统,只会显示最后一个Toast,而不像华为9.0以下系统一样弹出三个Toast。 针对这种情况,SmartShow内部作出了适当调整,以适配这种情况。 现在该问题已修复,请使用最新版本2.7.8,star一下是对我最大的支持,谢谢!