Android 对话框(Dialog)的简单使用

一、实现功能

点击按钮弹出对话框,对话框有三个按钮以及EditText编辑框,并且获取输入值。


二、实现代码

首先获得Button对象,点击按钮,调用showNormaDialog方法,弹出对话框。


Button mbt1 = (Button) findViewById(R.id.button1);
mbt1.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				showNormalDialog();
			}
		});

Dialog 类是对话框的基类,但应该避免直接实例化 Dialog,而应使用其子类,比如

  • AlertDialog 
    此对话框可显示标题、提示信息、按钮、可选择项列表或自定义布局等
  • DatePickerDialog 或 TimePickerDialog 
    此类对话框带有允许用户选择日期或时间的预定义 UI

在这里我们使用的是AlertDialog

public void showNormalDialog() {
			AlertDialog.Builder normalDialog = new AlertDialog.Builder(
					MainActivity.this);
			final EditText mEditText = new EditText(MainActivity.this);
			/* @setIcon 设置对话框图标  
			 * 			在这里我并没有使用图标
	         * @setTitle 设置对话框标题
	         * @setMessage 设置对话框消息提示
	         * setXXX方法返回Dialog对象,因此可以链式设置属性
	         * @setView 装入一个EditView
	         */
			normalDialog.setTitle("你好");
			normalDialog.setMessage("请选择");
			normalDialog.setView(mEditText);
			/*
			 *  对话框中的Button按钮设置
			 *  @setPositiveButton 会出现在第一个位置
			 *  @setNeutralButton  会出现在第二个位置
			 *  @setNegativeButton 会出现在第三个位置
			 */
			normalDialog.setPositiveButton("确定",
					new DialogInterface.OnClickListener() {
	
						@Override
						public void onClick(DialogInterface arg0, int arg1) {
							// TODO Auto-generated method stub
							//mstr 是全局变量,方便简单的使用
							mstr = mEditText.getText().toString();
						Toast.makeText(MainActivity.this, ""+mstr, Toast.LENGTH_SHORT).show();
						
						
						}
					});
			normalDialog.setNegativeButton("取消",
					new DialogInterface.OnClickListener() {
	
						@Override
						public void onClick(DialogInterface arg0, int arg1) {
							// TODO Auto-generated method stub
	
						}
					});
			normalDialog.setNeutralButton("等待",
					new DialogInterface.OnClickListener() {
	
						@Override
						public void onClick(DialogInterface arg0, int arg1) {
							// TODO Auto-generated method stub
	
						}
					});
			//显示
			normalDialog.show();
		}




猜你喜欢

转载自blog.csdn.net/qq_17798399/article/details/80154285