android开发-使用Toast显示提示信息框

使用Toast显示提示信息框

 

Toast是一种非常方便的提示消息框,他会在程序界面上显示一个简单的提示信息,这个提示信息框用于向用户生成简单的提示信息,它具有两个特点。

 

1.       Toast提示信息不会获得焦点,

2.       Toast提示信息过一段时间会自动消失

 

使用Toast来生成提示消息也非常简单,只要如下几个步骤,

1.       调用Toast的构造器或makeText方法创建一个Toast对象

2.       调用Toast的方法来设置该消息提示的对齐方式,页边距,显示内容等

3.       调用Toastshow()方法,将他显示出来

 

Toast的功能和用法都比较简单,大部分时候他只能显示简单的额文本提示如果应用需要显示诸如图片,列表之类的复杂提示,一般建议使用对话框完成,如果开发者确实想通过Toast来完成,也是可以的,Toast提供了一个setView()方法,该方法允许开发者自己定义Toast显示的内容,

下面看一个例子:

package org.crazyit.toast;

import android.app.Activity;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.Toast;


public class ToastTest extends Activity
{
	@Override
	public void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		Button simple = (Button)findViewById(R.id.simple);
		//为按钮的单击事件绑定事件监听器
		simple.setOnClickListener(new OnClickListener()
		{
			@Override
			public void onClick(View source)
			{
				//创建一个Toast提示信息
				Toast toast = Toast.makeText(ToastTest.this
					, "简单的提示信息"
					// 设置该Toast提示信息的持续时间
					, Toast.LENGTH_SHORT);
				toast.show();
			}
		});
		Button bn = (Button)findViewById(R.id.bn);
		//为按钮的单击事件绑定事件监听器
		bn.setOnClickListener(new OnClickListener()
		{
			@Override
			public void onClick(View source)
			{
				//创建一个Toast提示信息
				Toast toast = Toast.makeText(ToastTest.this
					, "带图片的的提示信息"
					// 设置该Toast提示信息的持续时间
					, Toast.LENGTH_LONG);				
				toast.setGravity(Gravity.CENTER, 0, 0);
				//获取Toast提示里原有的View
				View toastView = toast.getView();
				//创建一个ImageView
				ImageView image = new ImageView(ToastTest.this);
				image.setImageResource(R.drawable.tools);
				//创建一个LinearLayout容器
				LinearLayout ll = new LinearLayout(ToastTest.this);
				//向LinearLayout中添加图片、原有的View
				ll.addView(image);
				ll.addView(toastView);
				toast.setView(ll);
				toast.show();				
			}
		});	
	}
}

结果如下所示:


posted on 2011-10-06 18:18  wangbokun  阅读(2846)  评论(0编辑  收藏  举报

导航