android开发(二十) Toast五种特效详解

来源:互联网 发布:地牢探测器JS手机版 编辑:程序博客网 时间:2024/05/19 23:24

   Toast是Android中用来显示显示信息的一种机制,和Dialog不一样的是,

   Toast是没有焦点的,而且Toast显示的时间有限,过一定的时间就会自动消失。

一  默认效果:


代码:
   Toast.makeText(getApplicationContext(), "默认Toast样式",Toast.LENGTH_SHORT).show();

二  自定义显示位置效果:


代码:

   toast = Toast.makeText(getApplicationContext(),"自定义位置Toast", Toast.LENGTH_LONG);

   toast.setGravity(Gravity.CENTER, 0, 0);

   toast.show();

三  带图片效果:


代码
   toast = Toast.makeText(getApplicationContext(),"带图片的Toast", Toast.LENGTH_LONG);
   toast.setGravity(Gravity.CENTER, 0, 0);
   LinearLayout toastView = (LinearLayout) toast.getView();
   ImageView imageCodeProject = new ImageView(getApplicationContext());
   imageCodeProject.setImageResource(R.drawable.icon);
   toastView.addView(imageCodeProject, 0);
   toast.show();

四  完全自定义效果:


代码
  LayoutInflater inflater = getLayoutInflater();
  View layout = inflater.inflate(R.layout.custom, (ViewGroup) findViewById(R.id.llToast));
  ImageView image = (ImageView) layout.findViewById(R.id.tvImageToast);
  image.setImageResource(R.drawable.icon);
  TextView title = (TextView) layout.findViewById(R.id.tvTitleToast);
  title.setText("Attention");
  TextView text = (TextView) layout.findViewById(R.id.tvTextToast);
  text.setText("完全自定义Toast");
  toast = new Toast(getApplicationContext());
  toast.setGravity(Gravity.RIGHT | Gravity.TOP, 12, 40);
  toast.setDuration(Toast.LENGTH_LONG);
  toast.setView(layout);
  toast.show();

五  其他线程:


 代码:
new Thread(new Runnable() {
    public void run() {
     showToast();
    }
 }).start();


1 0