1、下列代码是Android中各种常见弹出框使用的代码:
package com.example.android_02;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.content.DialogInterface;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
/**
*
* @author daosui
* 各种弹出框的使用
*/
public class MainActivity extends Activity implements OnClickListener {
Button btn1,btn2,btn3,btn4,btn5,btn6,btn7;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn1 = (Button)this.findViewById(R.id.btn1);
btn2 = (Button)this.findViewById(R.id.btn2);
btn3 = (Button)this.findViewById(R.id.btn3);
btn4 = (Button)this.findViewById(R.id.btn4);
btn5 = (Button)this.findViewById(R.id.btn5);
btn6 = (Button)this.findViewById(R.id.btn6);
btn7 = (Button)this.findViewById(R.id.btn7);
btn1.setOnClickListener(this);
btn2.setOnClickListener(this);
btn3.setOnClickListener(this);
btn4.setOnClickListener(this);
btn5.setOnClickListener(this);
btn6.setOnClickListener(this);
btn7.setOnClickListener(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void onClick(View v) {
if(v.getId() == R.id.btn1){//简单弹出框的使用
new AlertDialog.Builder(this).setTitle("标题")//设置弹出框的第一种方法
.setMessage("简单弹出框").setPositiveButton("确定", null)
.show();
}else if(v.getId() == R.id.btn2){//带确定和取消按钮的弹出框的使用
Builder builder = new AlertDialog.Builder(this);//设置弹出框的第二种方法
builder.setTitle("确定");
builder.setMessage("确定吗?");
builder.setPositiveButton("是", null);
builder.setNegativeButton("否", null);
builder.show();
}else if(v.getId() == R.id.btn3){//文本对话框的使用
new AlertDialog.Builder(this)
.setTitle("请输入 ")
.setIcon(android.R.drawable.ic_dialog_info)
.setView(new EditText(this))
.setPositiveButton("确定", null)
.setPositiveButton("取消", null)
.show();
}else if(v.getId() == R.id.btn4){//单选对话框的使用
Builder builder = new AlertDialog.Builder(this);
builder.setTitle("请选择");
builder.setIcon(android.R.drawable.ic_dialog_info);
builder.setSingleChoiceItems(new String[]{"选项1","选项2","选项3","选项4"}, 0, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface v, int which) {
v.dismiss();
}
});
builder.setNegativeButton("取消", null);
builder.show();
}else if(v.getId() == R.id.btn5){//多选对话框的使用
Builder builder = new AlertDialog.Builder(this);
builder.setTitle("请选择");
builder.setIcon(android.R.drawable.ic_dialog_info);
builder.setMultiChoiceItems(new String[]{"选项1","选项2","选项3","选项4"}, null, null);
builder.setPositiveButton("确定", null);
builder.setNegativeButton("取消", null);
builder.show();
}else if(v.getId() == R.id.btn6){//列表弹出框的使用
Builder builder = new AlertDialog.Builder(this);
builder.setTitle("列表框");
builder.setIcon(android.R.drawable.ic_dialog_info);
builder.setItems(new String[]{"列表1","列表2","列表3","列表4"}, null);
builder.setPositiveButton("确定", null);
builder.show();
}else if(v.getId() == R.id.btn7){//图片弹出框的使用
ImageView img = new ImageView(this);
img.setImageResource(R.drawable.ic_launcher);
Builder builder = new AlertDialog.Builder(this);
builder.setTitle("图片框");
builder.setView(img);
builder.setPositiveButton("确定",null);
builder.show();
}
}
}
至于按钮部分,则需自己在activity_main.xml(注:xml文件命名是只能有小写字母存在)定义了,一切准备就绪后就可以看到在Android中各种经常出现的弹出框的使用过程了。