Android Toast 显示时间问题的探讨
来源:互联网 发布:生化危机启示录2 知乎 编辑:程序博客网 时间:2024/05/04 03:44
我想,看到这篇文章的你对Toast并不陌生,可以这样说,Toast的作用就是提示用户。一般为了到达更好地用户体验效果,我们可以自定义Toast的显示效果,包括样式、显示时间等。这里我只对Toast的显示时间问题与大家分享一下我的经验。
我们知道Toast的默认显示时间有两个,分别为Toast.LENGTH_SHORT和Toast.LENGTH_LONG,当然我们也可以根据需要自定义Toast显示时间的长短,这个问题不是本文的重点,在这里不做介绍。下面开始我们的重点。使用过Toast的你,也许与我一样也遇到过这样的问题:我们在几个Button的点击事件中都添加Toast提醒消息,当逐个点击这些Button后,Toast消息会叠加出现,持续一个相对长的时间,并且当我们关闭此应用时,Toast消息还在显示。出现这种情况是因为每次Toast提示的时间叠加的结果,比如,第一个Toast出现的时间为1s,那么第二个就要等待1s后才能出现,这样就会造成时间的累加,致使显示时间增加。显然我们在做应用时并不希望出现此种情况,那么这里给出我的用过的一个方法。如果我们的应用使用Toast频繁,建议对此单独建个类以使代码不至于那么冗杂,我们用起来也方便。
ToastShow.class:
public class ToastShow {private Context context;private Toast toast = null;public ToastShow(Context context) { this.context = context;}public void toastShow(String text) {if(toast == null){toast = Toast.makeText(context, text, Toast.LENGTH_SHORT);}else {toast.setText(text);}toast.show();}}
使用这段代码用于显示Toast就不会出现时间地叠加,下面分析一下。个人认为只是一个Toast在不停的显示,只是其内容(也就是出现的提示消息)不同,当Toast=null时,出现一个Toast,如果这个Toast还没有消失时就要出现第二个,那么只是使用其setText()方法改变了内容,文档对setText()方法地解释是:
Update the text in a Toast that was previously created using one of the makeText() methods.
也就是:更新之前创建的一个使用makeText()方法的Toast里的文本。看到这也许你就明白了。
最后说一句:分享有益、转载请注明出处:http://blog.csdn.net/zjbpku/article/details/7930764
- Android Toast 显示时间问题的探讨
- Android Toast 显示时间问题的探讨
- [读书笔记] Android Toast 显示时间叠加问题的探讨
- android中Toast显示时间累加问题的解决
- Android中Toast显示时间的自定义
- Android中Toast显示时间的自定义
- Android中Toast显示时间的自定义
- Android延长Toast显示时间的方法
- Android中Toast显示时间的自定义
- android toast自定义显示时间
- Android Toast显示叠加的问题
- Android中的Toast重复显示的问题
- Android中的Toast重复显示的问题
- Android 解决Toast的延时显示问题
- Android中的Toast重复显示的问题
- Android Toast显示异常的问题
- Toast显示时间的自定义
- android自定义Toast的显示时间与消失
- 十道海量数据处理面试题与十个方法大总结
- 1248 Safecracker
- OpenCV HOGDescriptor 参数图解
- TCP并发服务器设计
- oracle dba培训教程 第18章 数据库的联机(热)备份
- Android Toast 显示时间问题的探讨
- 黑马程序员_学习记录05:初步接触面向对象
- linux 多线程编程
- socket编程(一)最简单的c/s模式
- 动态数组
- 最长回文(后缀数组||Manacher算法)
- hdu 1017 A Mathematical Curiosity
- ubuntu 快捷启动项
- 2012年8月传统编程语言就业趋势分析(图)