带输入框(EditText)的AlertDialog-java-Android

//点击输城市按钮
    private Button.OnClickListener choose_city_Listener = new Button.OnClickListener()
	{
		@Override
		public void onClick(View arg0)
		{
			LayoutInflater factory = LayoutInflater.from(TalkerActivity.this);//提示框
            final View view = factory.inflate(R.layout.city, null);//这里必须是final的
            final EditText edit=(EditText)view.findViewById(R.id.input_city);//获得输入框对象
            edit.setHint("输入您所在的城市名称");//输入框默认值
            new AlertDialog.Builder(TalkerActivity.this)
                .setTitle("上海、北京、广州...")//提示框标题
                .setView(view)
                .setPositiveButton("确定",//提示框的两个按钮
                    new android.content.DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog,int which) {
                    //事件处理
                    city_name = edit.getText().toString();
                    }
             }).setNegativeButton("取消", null).create().show();
		}
	};

另外还需要添加xml文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent">
  
    <EditText android:id="@+id/input_city"
    android:layout_width="fill_parent"
     android:layout_height="wrap_content">
    
        <requestFocus></requestFocus>
    </EditText>
   
</LinearLayout>

参考链接: http://blog.sina.com.cn/s/blog_6f67b91d0100tkj7.html

你可能感兴趣的:(带输入框(EditText)的AlertDialog-java-Android)