Фокус и клавиатура по умолчанию для редактирования текста в Android AlertDialog

Я использую AlertDialog.Builder в Android, чтобы быстро запрашивать у пользователя текст. Диалоговое окно отображается и отлично работает, но пользователь должен щелкнуть поле EditText, чтобы загрузить программную клавиатуру. Есть ли способ открыть клавиатуру и сосредоточиться на каждом открытии моего диалогового окна? Вот мой код:

final Map<String,Object> rowData = itemList.get(mPosition);
                    final EditText input = new EditText(searchList.getContext());
                input.requestFocus();


                input.setSingleLine();
                final AlertDialog dialog = new AlertDialog.Builder(searchList.getContext())
                .setTitle(StringUtils.getSafeString(rowData.get("label")))
                .setView(input)
                .setPositiveButton("Ok", new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int whichButton) { 
                        rowData.put("value", StringUtils.getSafeString(input.getText()));
                        searchList.invalidateViews();

                    }
                }).setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int whichButton) {
                        // Do nothing.
                    }
                }).create();
                dialog.show();
17
задан cain 21 March 2012 в 20:23
поделиться