entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

2votos

android display keyboard

Saludos a todos, bueno tengo una pequeña dificultad cree un dialog, para ingresar texto en una caja, todo funciona muy bien pero necesito que al desplegar mi dialog gatille el keyboard de android, para ingresar el texto en la caja.

nota: trabajo con la api 19

método

    private void showDialogEditText(final View v, final Question question) {
        AlertDialog.Builder builder = new AlertDialog.Builder(getContext());

        LayoutInflater inflater = getActivity().getLayoutInflater();
        View rootView = inflater.inflate(R.layout.layout_answer, null);
        final EditText etAnswer = (EditText) rootView.findViewById(R.id.etAnswer);

        ((TextView) rootView.findViewById(R.id.tvQuestion)).setText(question.getQuestionText());
        etAnswer.setText(question.getAnswer().getValue());

        builder.setTitle(getString(R.string.text_question));
        builder.setPositiveButton(getString(R.string.accept), new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int whichButton) {
                String value = etAnswer.getText().toString();
                question.getAnswer().setValue(value);

                TextView tvAnswer = (TextView) v.findViewById(R.id.tvAnswer);
                tvAnswer.setText(value);
                tvAnswer.setVisibility(View.VISIBLE);
            }
        });

        builder.setNegativeButton(getString(R.string.cancel), new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int which) {
                dialog.dismiss();
            }
        });

        builder.setView(rootView).create();
        builder.show();
    }

mi vista del dialog:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    style="@style/layout_list_item"
    android:baselineAligned="false"
    android:orientation="vertical">

    <TextView
        android:id="@+id/tvQuestion"
        style="@style/layout_list_item_question"
        android:text="Medium Text"
        android:paddingBottom="8dp"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <EditText
        android:id="@+id/etAnswer"
        android:windowSoftInputMode="stateVisible"
        style="@style/layout_answer_edit" />

</LinearLayout>

pd: acepto sugerencias para mejorar este código (no me siento satisfecho).

1 Respuesta

0voto

x4mp73r Puntos13390

Creo que con esto se resuelve:

 //Aquí haces que el cursor se coloque en tu Edittext
 tuEdittext.requestFocus();
//Forzas a que se abra el teclado
 getDialog().getWindow().setSoftInputMode(
 LayoutParams.SOFT_INPUT_STATE_VISIBLE);

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta