• The Toast in android


    Toast can show the help/prompts to user. There have five effect of toast as bellow:


    1.default effect:


    code:

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

    2.custom position effect:


    code:

    toast = Toast.makeText(getApplicationContext(),
         "自己定义位置Toast", Toast.LENGTH_LONG);
       toast.setGravity(Gravity.CENTER, 0, 0);
       toast.show();

    3.with the picture effect:


    code:

    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();

    4.completely custom effect:


    code:

    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();

    5.from other thread:


    code:

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

    All of the code as bellow:

    1.main.java

    package com.wjq.toast;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.os.Handler;
    import android.view.Gravity;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.ViewGroup;
    import android.view.View.OnClickListener;
    import android.widget.ImageView;
    import android.widget.LinearLayout;
    import android.widget.TextView;
    import android.widget.Toast;
    
    public class Main extends Activity implements OnClickListener {
     Handler handler = new Handler();
    
     @Override
     public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);
    
      findViewById(R.id.btnSimpleToast).setOnClickListener(this);
      findViewById(R.id.btnSimpleToastWithCustomPosition).setOnClickListener(
        this);
      findViewById(R.id.btnSimpleToastWithImage).setOnClickListener(this);
      findViewById(R.id.btnCustomToast).setOnClickListener(this);
      findViewById(R.id.btnRunToastFromOtherThread).setOnClickListener(this);
    
     }
    
     public void showToast() {
      handler.post(new Runnable() {
    
       @Override
       public void run() {
        Toast.makeText(getApplicationContext(), "我来自其它线程!",
          Toast.LENGTH_SHORT).show();
    
       }
      });
     }
    
     @Override
     public void onClick(View v) {
      Toast toast = null;
      switch (v.getId()) {
      case R.id.btnSimpleToast:
       Toast.makeText(getApplicationContext(), "默认Toast样式",
         Toast.LENGTH_SHORT).show();
       break;
      case R.id.btnSimpleToastWithCustomPosition:
       toast = Toast.makeText(getApplicationContext(),
         "自己定义位置Toast", Toast.LENGTH_LONG);
       toast.setGravity(Gravity.CENTER, 0, 0);
       toast.show();
       break;
      case R.id.btnSimpleToastWithImage:
       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();
       break;
      case R.id.btnCustomToast:
       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();
       break;
      case R.id.btnRunToastFromOtherThread:
       new Thread(new Runnable() {
        public void run() {
         showToast();
        }
       }).start();
       break;
    
      }
    
     }
    }
    2.main.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:orientation="vertical" android:layout_width="fill_parent"
     android:layout_height="fill_parent" android:padding="5dip" android:gravity="center">
     <Button android:layout_height="wrap_content"
      android:layout_width="fill_parent" android:id="@+id/btnSimpleToast"
      android:text="默认"></Button>
     <Button android:layout_height="wrap_content"
      android:layout_width="fill_parent" android:text="自己定义显示位置"
      android:id="@+id/btnSimpleToastWithCustomPosition"></Button>
     <Button android:layout_height="wrap_content"
      android:layout_width="fill_parent" android:id="@+id/btnSimpleToastWithImage"
      android:text="带图片"></Button>
     <Button android:layout_height="wrap_content"
      android:layout_width="fill_parent" android:text="全然自己定义"
      android:id="@+id/btnCustomToast"></Button>
     <Button android:layout_height="wrap_content"
      android:layout_width="fill_parent" android:text="其它线程"
      android:id="@+id/btnRunToastFromOtherThread"></Button>
    
    </LinearLayout>
    
     
    
    3.custom.xml
    
    <?xml version="1.0" encoding="utf-8"?

    > <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="wrap_content" android:layout_width="wrap_content" android:background="#ffffffff" android:orientation="vertical" android:id="@+id/llToast" > <TextView android:layout_height="wrap_content" android:layout_margin="1dip" android:textColor="#ffffffff" android:layout_width="fill_parent" android:gravity="center" android:background="#bb000000" android:id="@+id/tvTitleToast" /> <LinearLayout android:layout_height="wrap_content" android:orientation="vertical" android:id="@+id/llToastContent" android:layout_marginLeft="1dip" android:layout_marginRight="1dip" android:layout_marginBottom="1dip" android:layout_width="wrap_content" android:padding="15dip" android:background="#44000000" > <ImageView android:layout_height="wrap_content" android:layout_gravity="center" android:layout_width="wrap_content" android:id="@+id/tvImageToast" /> <TextView android:layout_height="wrap_content" android:paddingRight="10dip" android:paddingLeft="10dip" android:layout_width="wrap_content" android:gravity="center" android:textColor="#ff000000" android:id="@+id/tvTextToast" /> </LinearLayout> </LinearLayout>


    source code download

    if you also interest in linux and android embed system,please connection with us in QQ grounp:139761394

    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    04面向对象编程-01-创建对象 和 原型理解(prototype、__proto__)
    03标准对象-02-RegExp 正则表达式
    03标准对象-01-Date和JSON
    广度优先搜索
    Java虚拟机(三) —— 类加载
    业务开发(一)—— MySQL
    Java并发编程(一) —— Java内存模型JMM
    深度优先搜索
    Spark学习(一)
    清泉白石
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4645408.html
Copyright © 2020-2023  润新知