前段时间做了个android小应用,需要弹出个对话框获取用户输入,然后获取用户输入内容做相应处理,dialog是自己在view中自定义显示的。完成后发现不能像非自定义dialog那样通过获取dialog的editor获得输入值,不知哪位能给予好的建议。

解决方案 »

  1.   

    你 需要 加载自己定义的 布局文件,然后与普通的activity的控件加载是一样子的哦
      

  2.   

    直接给你代码吧。。final View textEntryView = inflater.inflate(R.layout.musiclist, null);
    EditText EditText01 = (EditText) textEntryView.findViewById(R.id.EditText01);
    list.setAdapter(adapter);
    AlertDialog.Builder builder = new Builder(Setting.this);
    builder.setTitle(R.string.options_susic);
    builder.setView(textEntryView);
    builder.setPositiveButton(R.string.yes,
    new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int whichButton) {
         String ste=EditText01.getText().toString;//这不就得到了么
    }
    });
    builder.setNegativeButton(R.string.no, null);
    builder.show();
      

  3.   

    我用这个时候也是这样,但是总是多出一个Button按钮,但这个按钮我并没有定义,不知道怎么解决?高手帮帮忙,谢谢啊
      

  4.   

    setPositiveButton
    setNegativeButton
    这个就是添加按钮绑定监听事件的,你看是不是
      

  5.   

    装载/res/layout/login.xml界面布局
    TableLayout loginForm = (TableLayout)getLayoutInflater()
    .inflate( R.layout.login, null);
    Button button = (Button)loginForm.findViewById(R.id.zhuce);
    如上面的程序,先加载再从自定义的对话框中findviewbyid