`

Android开发之Toast全接触

阅读更多

Android开发之Toast全接触

 

                                                              

     Jason in iteye.com

 

 

Toast是Android中比较常用,显示效果也不错的控件,合理使用必会给应用程序画龙点睛的效果。



Toast效果:

 

 

 

 

 

 

 

 


上面的Toast是最最基本的Toast,要实现这种效果非常的简单。


 

Toast toast = Toast.makeText(ToastActivity.this,  "Your SD card is full", Toast.LENGTH_LONG);
toast.show();

 

第一个参数是要显示这个Toast的Context,比如一个Activity;

第二个参数是显示内容;

第三个参数是显示的持续时间。



最基本的Toast已经足够日常使用了,但是我们再深入一点,来实现一个带图片的Toast。

 

 

 

 

思路:

1.new一个常规Toast对象和ImageView对象

2.得到这个Toast的View

3.new一个Layout

4.把ImageView和Toast的View加进上一步得到的Layout中

5.把这个layout赋给Toast,替换Toast的View

6.喝杯水,调用show()就大功告成。



 

//先定义一个Toast

 Toast toast = Toast.makeText(ToastActivity.this,  "带图片的Toast", 

Toast.LENGTH_LONG);

 //定义一个ImageView

 ImageView imageView = new ImageView(ToastActivity.this);

 imageView.setImageResource(R.drawable.icon);

                                

 //获得Toast的View

  View toastView = toast.getView();

                                

  //定义一个Layout,这里是Layout

  LinearLayout linearLayout =  new LinearLayout(ToastActivity.this);

  linearLayout.setOrientation(LinearLayout.HORIZONTAL);

                                

  //将ImageView和ToastView合并到Layout中

  linearLayout.addView(imageView);

  linearLayout.addView(toastView);

                                

 //替换掉原有的ToastView

  toast.setView(linearLayout);

  toast.show();

 



最后,我要提醒大家的是,Toast显示的时候不会因为你切换Activity和退出程序而自动消失,所以,如果你的应用需要频繁地切换Activity的话,请慎用Toast!

 

 

 

后面附出了示例的源代码和整个工程,有兴趣研究又懒得敲代码的同学可以下载下去运行试着玩玩。

 

 

 

 

 

分享到:
评论
12 楼 sd6733531 2011-06-21  
楼主的写法真牛
11 楼 whao189 2011-06-21  
爪哇岛岛主 写道
找出来了,大家可以看看,互相补充啊
http://yangmeiquan-mail-sina-com.iteye.com/admin/blogs/1015352


到图片能不能 不设置成 线性布局,换一种可以不?而且 我试了一下 本篇的楼主的 那个 图片和 toast 的位置貌似 隔得太远了,我怎么设置 都不能把他们靠近些!!!


希望楼下有人 或者楼主给解答一下!
10 楼 爪哇岛岛主 2011-06-21  
找出来了,大家可以看看,互相补充啊
http://yangmeiquan-mail-sina-com.iteye.com/admin/blogs/1015352
9 楼 爪哇岛岛主 2011-06-21  
很早的时候我在我的博客里也发表了类似的博文,但是仅仅是在我的私人博客里。。
8 楼 让安卓飞一会 2011-06-21  
whoareyou40 写道
正好想使用这个功能。。。

要是Toast文字框的形状能改变就好了




我觉得就这样挺好看的。。

7 楼 whoareyou40 2011-06-20  
正好想使用这个功能。。。

要是Toast文字框的形状能改变就好了
6 楼 glamey 2011-06-19  
让安卓飞一会 写道
qx8668 写道
好像是哪里抄的



这哥们怎么这么浮躁呢。。说话都不用负责的么,一个“好像”就可以给人定罪。。


我敢保证我的这篇文章是原创的,但是你敢保证你是经过调查才得出的结论而不是随口乱说的?


有意思~






大家都要淡定啊。

世界上的代码其实都是那个德行,只要效率高,稳定能干活就行了。
5 楼 让安卓飞一会 2011-06-19  
qx8668 写道
好像是哪里抄的



这哥们怎么这么浮躁呢。。说话都不用负责的么,一个“好像”就可以给人定罪。。


我敢保证我的这篇文章是原创的,但是你敢保证你是经过调查才得出的结论而不是随口乱说的?


有意思~



4 楼 qx8668 2011-06-19  
好像是哪里抄的
3 楼 让安卓飞一会 2011-06-18  
zylucky 写道
syluke 写道
非常好的帖子。

+1



thx~
2 楼 zylucky 2011-06-17  
syluke 写道
非常好的帖子。

+1
1 楼 syluke 2011-06-17  
非常好的帖子。

相关推荐

Global site tag (gtag.js) - Google Analytics