天天看点

Android 用自定义PopupWindow实现自定义Toast

标题有点拗口,其实是可以分别写成两篇博文的。也就是说看完这篇能了解两个方面:

自定义布局样式的Toast

自定义PopupWindow实现多功能Toast

先感性认识:

Android 用自定义PopupWindow实现自定义Toast

触发事件来自于MenuItem的onClick,具体请看上一篇Android 自定义Menu

一 、自定义布局样式的Toast

布局文件dialog_toast.xml

使用这个自定义布局,解决多次Toast重复弹出。

二 、自定义PopupWindow实现多功能Toast

以下是MenuItem点击事件的完整代码,详细注释了。

使用PopupWindow实现的Toast可以不受Toast.LENGTH_SHORT或Toast.LENGTH_LONG的时间限制,并且可以得到焦点和用户交互,比如onClick等等。

Toast本身是一个非常便捷的提示组件,它的特点就是使用便捷,比如

这样的一句代码就可以给出用户一个很友好的提示。

如果想做出复杂的交互功能,这些就不是Toast的定位了,需要自定义PopupWindow或者AlertDialog来实现,它们的定位在此。