Когда я нажимаю на TextInputEditText, который является родительским для LinearLayout добавленного программно в AlertDialog, моя клавиатура не отображается (проверено на нескольких устройствах)
Сначала я создаю новый LinearLayout и добавляю к нему новый Spinner.
После последнего элемент на счетчике выбран, я удаляю счетчик из LinearLayout и добавляю TextInputEditText:
layout.removeAllViews();
layout.addView(input);
Когда я нажимаю на TextInputEditText, он фокусируется, но мягкая клавиатура не появляется
Однако, если я добавлю TextInputEditText непосредственно как представление для AlertDialog, клавиатура всплывает и отображается правильно.
В моем файле AndroidManifest.xml нет специальных записей.
Мой полный код:
private void dialogAddContact() {
ArrayList mails = new ArrayList();
final LinearLayout layout = new LinearLayout(this);
final TextInputEditText input = new TextInputEditText(this);
final Spinner sp = new Spinner(this);
layout.addView(sp);
layout.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT));
input.setInputType(InputType.TYPE_CLASS_TEXT);
input.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT));
[....]
final ArrayAdapter adp = new ArrayAdapter([....]);
sp.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT));
sp.setAdapter(adp);
sp.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView parent, View view, int position, long id) {
Log.d(Tools.LOGTAG, position + " " + totalMails);
if(position == totalMails - 1){
/****** Here i remove the spinner and add the input ****/
layout.removeAllViews();
layout.addView(input);
}
}
[....]
});
final AlertDialog.Builder builder = new AlertDialog.Builder(this)
.setView(layout, 50, 0, 50, 0)
[....]
});
dialog = builder.create();
dialog.show();
}
Подробнее здесь: https://stackoverflow.com/questions/385 ... t-keyboard
AlertDialog EditText не отображает программную клавиатуру ⇐ Android
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Преобразовать открытую спецификацию API в программную программную коллекцию Postman
Anonymous » » в форуме JAVA - 0 Ответы
- 6 Просмотры
-
Последнее сообщение Anonymous
-