加入收藏 | 设为首页 | 会员中心 | 我要投稿 宁德站长网 (https://www.0593zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

“吐司”测试二三事

发布时间:2020-03-13 15:55:11 所属栏目:资源 来源:站长网
导读:主要问题 : Toast作为 Android 轻量级反馈信息提示的系统控件,在目前项目中大量使用,但是由于Toast是系统层面提供的,不依赖于前台页面,存在滥用的风险。为了规避这些风险, Google 在Android系统版本的迭代过程中,不断进行了优化和限制。这些限制不
  主要问题 :  Toast作为Android轻量级反馈信息提示的系统控件,在目前项目中大量使用,但是由于Toast是系统层面提供的,不依赖于前台页面,存在滥用的风险。为了规避这些风险,Google在Android系统版本的迭代过程中,不断进行了优化和限制。这些限制不可避免的影响到了正常的业务逻辑。  目前为止输入法在测试过程中主要遇到过以下几种情况:  1、多次触发,Toast会按照队列的形式一个接一个的弹出,哪怕此时App退出也会不停的弹;  2、小米机型上触发Toast会带有应用名的前缀提示;  3、关闭通知权限后,无法正常的反馈给用户提示信息,造成不太友好的体验;  4、在部分机型上,单独的输入法键盘无法弹出Toast,需要悬浮窗权限,但在打开输入法App后,就可以正常弹出了;  解决方案:  问题1:  Toast对象在show时,系统将该对象放入队列中,只有当前没有要显示的toast时才执行本次show请求,否则需要显示完一个Toast之后再去显示下一个Toast,如果用户无意间多次触发了这个Toast,很可能导致这个Toast在较长的一段时间内无法消失,不停的出现,影响用户视觉体验。  解决:  可以在Toast触发的时候增加当前是否存在Toast的判断,如果当前没有在显示的Toast,则创建Toast并展示,如果当前已经存在一个Toast,则只替换当前的文案显示。  方法如下:“吐司”测试二三事  问题2:  在做定制版项目时,对方测试曾反馈一个问题,在小米手机上,输入法的Toast提示前面总是带着:搜狗输入法 的应用名称,显示如下:  经过调查发现,这种显示方式是MIUI系统特有的,本着不一样就是问题的逻辑,我们还是去查询了下这个问题。  Toast的默认方式如下:“吐司”测试二三事  如果你们的项目也是这么调用的,那么你的Toast前面也会有应用名。  网上提供了一种方法,将默认Toast置为空,重新写入内容,这样就不会带有应用名称,方法如下:“吐司”测试二三事  汇总以上两个问题,整合方法如下:“吐司”测试二三事  后面两个权限带来的问题,我们计划使用Snackbar的方法解决。测试过效果后,再详细给大家介绍Toast、Snackbar的优缺点。

(编辑:宁德站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读