如何在Dialog中添加Edittext

通过对话框提示用户输入信息(如账号和密码)是比较常用的人机交互界面,一开始以为在Dialog中添加对话框可能比较麻烦,直接集成Activity,然后将其声明为Dialog形式展现。后来看了一下代码,发现Dialog类本身就有个setView()方法可以用,虽然传入参数是View类型,但是可以扩展成EditText,这样就很简单了。关键代码如下:

private void buildEditDialog(){
    	final EditText text = new EditText(mContext);
		new AlertDialog.Builder(mContext).setTitle(R.string.new_tab)
			.setView(text)
			.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
				
				@Override
				public void onClick(DialogInterface dialog, int which) {
					String string = text.getText().toString();
					int size = string.length();
					if(size == 0 || size > TAB_LENGTH_MAX){
						buildEditDialog();
						Toast.makeText(mContext, getResources().getString(R.string.check_length), 500).show();
					}else{
						addItem(string);
					}
						
				}
			})
			.setNegativeButton(R.string.cancel, null)
			.show();
    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值