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