原文:http://blog.csdn.net/huangbiao86/article/details/6965669
package com.mstarc.g6.taketaxi.activity;
import com.mstarc.g6.taketaxi.R; 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.View.OnClickListener; import android.widget.Button; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import android.widget.Toast; public class HelloToastActivity extends Activity { /** Called when the activity is first created. */ Button btn_default; Button btn_define; Button btn_all_define; Button btn_image_define; Button btn_other_thread; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main2); initButton(); btn_all_define.setOnClickListener(new MyOnClickListerer()); btn_define.setOnClickListener(new MyOnClickListerer()); btn_other_thread.setOnClickListener(new MyOnClickListerer()); btn_image_define.setOnClickListener(new MyOnClickListerer()); btn_default.setOnClickListener(new MyOnClickListerer()); } public void initButton() { btn_all_define = (Button) findViewById(R.id.btn_all_define); btn_default = (Button) findViewById(R.id.btn_default); btn_define = (Button) findViewById(R.id.btn_define); btn_image_define = (Button) findViewById(R.id.btn_image_define); btn_other_thread = (Button) findViewById(R.id.btn_other_thread); } private class MyOnClickListerer implements OnClickListener { Handler handler = new Handler(); @Override public void onClick(View v) { if (v == btn_default) { Toast.makeText(getApplicationContext(), "这 是默认效果", Toast.LENGTH_SHORT).show(); } else if (v == btn_define) { Toast toast = Toast.makeText(getApplicationContext(), "这是自定义位置", Toast.LENGTH_SHORT); toast.setGravity(Gravity.CENTER, 0, 0); toast.show(); } else if (v == btn_image_define) { Toast toast = Toast.makeText(getApplicationContext(), "这是带图片的", Toast.LENGTH_SHORT); LinearLayout toastView = (LinearLayout) toast.getView(); ImageView imageCodeProject = new ImageView(getApplicationContext()); imageCodeProject.setImageResource(R.drawable.ic_launcher); toastView.addView(imageCodeProject, 0); toast.show(); } else if (v == btn_all_define) { LayoutInflater inflater = getLayoutInflater(); View view = inflater.inflate(R.layout.custom, null); ImageView iv = (ImageView) view.findViewById(R.id.tvImageToast); iv.setImageResource(R.drawable.ic_launcher); TextView title = (TextView) view.findViewById(R.id.tvTitleToast); title.setText("Attention"); TextView text = (TextView) view.findViewById(R.id.tvTextToast); text.setText("完全自定义Toast"); Toast toast = new Toast(getApplicationContext()); toast.setGravity(Gravity.RIGHT | Gravity.TOP, 12, 40); toast.setDuration(Toast.LENGTH_LONG); toast.setView(view); toast.show(); } else if (v == btn_other_thread) { new Thread(new Runnable() { public void run() { System.out.println("d"); showToast(); } }).start(); } } public void showToast() { handler.post(new Runnable() { @Override public void run() { Toast.makeText(getApplicationContext(), "我来自其他线程!", Toast.LENGTH_SHORT).show(); } }); } } }