在android开发中,显示消息框有多种方法。

一、使用Toast显示提示信息框

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

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

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

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

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

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

3. 调用Toast的show()方法,将他显示出来。

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

}

});

}

}

二、使用Builder对象

Builder dlg=new Builder(ServerInfoUpdate.this);
dlg.setTitle("Error");
dlg.setMessage("Unknown error.");
dlg.show();

三、使用AlertDialog对象


// 一个简单的弹出对话框
return new AlertDialog.Builder(this).setTitle("这是一个简单的弹出对话框的 Demo")
.create();

// 一个相对复杂的弹出对话框
return new AlertDialog.Builder(this)
.setTitle("标题") // 设置标题
// .setCustomTitle(View) // 以一个 View 作为标题
.setIcon(R.drawable.icon01) // 设置标题图片
// .setMessage("信息") // 需要显示的弹出内容
.setPositiveButton("确定", new OnClickListener() { // 设置弹框的确认按钮所显示的文本,以及单击按钮后的响应行为
@Override
public void onClick(DialogInterface a0, int a1) {
TextView txtMsg = (TextView) Main.this.findViewById(R.id.txtMsg);
txtMsg.append("单击了对话框上的“确认”按钮\n");
}
})
.setItems(R.array.ary, new DialogInterface.OnClickListener() { // 弹框所显示的内容来自一个数组。数组中的数据会一行一行地依次排列
public void onClick(DialogInterface dialog, int which) {
}
})
// 其他常用方法如下
// .setMultiChoiceItems(arg0, arg1, arg2)
// .setSingleChoiceItems(arg0, arg1, arg2)
// .setNeutralButton(arg0, arg1)
// .setNegativeButton(arg0, arg1)
.create();

四、弹出进度条对话框

ProgressDialog progress = new ProgressDialog(this);
progress.setMessage("loading...");
return progress;


更多相关文章

  1. Android(安卓)Dialog使用
  2. android 修改系统的dialog样式
  3. android基础回顾(三)基础UI组件
  4. android Bitmap、Drawable、byte[]相互转换
  5. Android中的FrameBuffer
  6. Android(安卓)的提示接口-Toast
  7. 【Android】GridView显示大量图片缓存问题(一)
  8. Android优化——UI检视利器:Hierarchy Viewer
  9. Android基于开源项目的WheelView的时间、地址联动选择对话框

随机推荐

  1. [置顶] Android系统体系结构分析
  2. Android单元测试研究与实践
  3. 面试收集 - 收藏集 - 掘金
  4. Android提高第九篇之SQLite分页表格
  5. 浅谈Android系统的图标设计规范
  6. Android自己主动化測试——CTS測试
  7. [Android(安卓)Training视频系列] 6.3 Sa
  8. [置顶] PopupWindow在android中的使用分
  9. android中常见的类(三)
  10. 【cocos2dx-3.0beta-制作flappybird】就