Softkeyboard wird in AlertDialog nur für das Telefon nicht angezeigt

Warum das Softkeyboard nur auf dem Tablet angezeigt wird, ist ein Rätsel!

Hier ist der Code, den ich verwendet habe.

AlertDialog.Builder builder = new AlertDialog.Builder(CurrentActivityName.this);
builder.setTitle(“Title”);
builder.setMessage(“Message”);
final EditText input = new EditText(CurrentActivityName.this);
builder.setView(input);
builder.setPositiveButton(R.string.allow, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//my code
}
});
builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//my code
}
});
builder.create().show();

Ich kann es lösen durch using postDelayed mit einernzahl Millisekund um ein @ zu post Runnable

 input.requestFocus();
 input.postDelayed(new Runnable() {
 @Override
 public void run() {
 InputMethodManager keyboard = (InputMethodManager)
                        getSystemService(Context.INPUT_METHOD_SERVICE);
 keyboard.showSoftInput(input, 0);
                    }
                },200);

Hardcodierte Verzögerungen werden niemals empfohlen, weil sie @ einführen könnnvorhersehbares Verhalt unterdifferent conditions / different devices.

ch suche nach einer stabilen Lösun

Antworten auf die Frage(2)

Ihre Antwort auf die Frage