论坛首页 移动开发技术论坛

Android开发之Toast全接触

浏览 9311 次
该帖已经被评为良好帖
作者 正文
   发表时间:2011-06-16   最后修改:2011-06-16

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!

 

 

 

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

 

 

 

 

 

   发表时间:2011-06-17  
非常好的帖子。
0 请登录后投票
   发表时间:2011-06-17  
syluke 写道
非常好的帖子。

+1
0 请登录后投票
   发表时间:2011-06-18  
zylucky 写道
syluke 写道
非常好的帖子。

+1



thx~
0 请登录后投票
   发表时间:2011-06-19  
好像是哪里抄的
0 请登录后投票
   发表时间:2011-06-19   最后修改:2011-06-19
qx8668 写道
好像是哪里抄的



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


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


有意思~



0 请登录后投票
   发表时间:2011-06-19  
让安卓飞一会 写道
qx8668 写道
好像是哪里抄的



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


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


有意思~






大家都要淡定啊。

世界上的代码其实都是那个德行,只要效率高,稳定能干活就行了。
0 请登录后投票
   发表时间:2011-06-20  
正好想使用这个功能。。。

要是Toast文字框的形状能改变就好了
0 请登录后投票
   发表时间:2011-06-21  
whoareyou40 写道
正好想使用这个功能。。。

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




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

0 请登录后投票
   发表时间:2011-06-21  
很早的时候我在我的博客里也发表了类似的博文,但是仅仅是在我的私人博客里。。
0 请登录后投票
论坛首页 移动开发技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics