Как создать всплывающее меню с EditText в Android? Мне необходимо, чтобы по нажатии клавиши появлялось меню, небольшим размеров (т.е. не на весь экран), в котором будет TextView, EditText и Button. Каким образом такое реализуется, я не совсем понимаю, по этому задаю к более опытным людям вопрос. Каким образом это сделать?
Есть предположение, что это просто переход к новой активность у которой стоит тема. что-то вроде "@android:style/Theme.DeviceDefault.Dialog.MinWidth". Верна ли эта идея или есть гораздо более простые способы?

21 Авг 2019 в 07:05
155 +1
0
Ответы
1

Для создания всплывающего меню с EditText в Android вы можете использовать AlertDialog или PopupWindow. Оба способа позволяют создать кастомное всплывающее окно с нужными элементами.

Например, для использования AlertDialog вы можете создать кастомный layout с TextView, EditText и Button, а затем установить этот layout в AlertDialog:

LayoutInflater inflater = LayoutInflater.from(context);
View dialogView = inflater.inflate(R.layout.custom_dialog_layout, null);
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(context);
alertDialogBuilder.setView(dialogView);
AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();

Если вам нужно, чтобы всплывающее окно было небольшого размера, вы можете установить соответствующие параметры для AlertDialog:

alertDialog.getWindow().setLayout(width, height);

PopupWindow также является хорошим вариантом для создания всплывающих окон в Android. Вы можете создать кастомный layout и установить его в PopupWindow:

LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View popupView = inflater.inflate(R.layout.custom_popup_layout, null);
PopupWindow popupWindow = new PopupWindow(popupView, width, height, true);
popupWindow.showAtLocation(anchorView, Gravity.CENTER, 0, 0);

Оба способа позволят вам создать всплывающее окно с нужными элементами и настроить его размер и расположение по вашим предпочтениям. Надеюсь, это поможет вам реализовать вашу задачу.

20 Апр в 13:07
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 84 706 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир