1

我有一个打开对话框的表单(包括列表视图和一个按钮),如果单击按钮,对话框应该消失并且键盘应该显示在表单上

我做不到。有什么想法吗?

感谢帮助!

我的代码是:

final Dialog dialog = new Dialog(context);
                 dialog.setContentView(R.layout.dialog_list_layout);
                 dialog.setCancelable(true);

                 final ListView listviewDialog = (ListView) dialog.findViewById(R.id.listViewDialog);
                 DialogListAdapter adapter = new DialogListAdapter(context, R.id.textViewItem, List);
                 listviewDialog.setAdapter(adapter);

        ((Button) dialog.findViewById(R.id.button)).setOnClickListener(new View.OnClickListener() {

                            public void onClick(View v) {                   
                                editText.setText("");


                                dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
                                ((EditText) findViewById(R.id.editText)).requestFocus();
                                InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
                                imm.showSoftInput(((EditText) findViewById(R.id.editTextAddress)), InputMethodManager.SHOW_IMPLICIT);

                                dialog.dismiss();       
                            }
                        });
                         dialog.show();
4

1 回答 1

1

只需创建一个对话框,然后单击其按钮,为 inputmanager 编写代码

 AlertDialog.Builder builder = new AlertDialog.Builder(this);
            builder.setMessage(str1);
            builder.setCancelable(false);
            builder.setTitle("Status");
            builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int id) 
                 {

                    dialog.dismiss();
                   InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
                   imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,0);

                }
            });
            AlertDialog alert = builder.create();
            alert.show();

查看我更新的答案

更新

除了我的回答,看看这是否可以在对话框中创建列表视图?AlertDialog 中的 ListView

于 2012-07-26T11:40:27.603 回答