Как настроить Alert Dialog высоту и ширину в Android?

1

Вот мой код:

@Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    context = this;    

    AlertDialog alertChoice = new AlertDialog.Builder(context).create();
    alertChoice.setTitle("Title");
    alertChoice.setView(ViewDialogScreen("Test"));    
    alertChoice.show();    
  }
  private View ViewDialogScreen(String strText) {
    LinearLayout llay = new LinearLayout(context);
    llay.setLayoutParams(new LayoutParams(320, 400));
    TextView tv = new TextView(context);
    tv.setText(strText);
    llay.addView(tv);
    return llay;
  }

Изображение 174551

Я получил результат, как указано выше.

  • Мне нужно показать AlertDialog в полноэкранном режиме /95% от размера экрана.
  • Мне нужно обработать больше полей в Dialog.
  • Как включить HorizontalScrollview в AlertDialog?
Теги:
horizontal-scrolling
alertdialog
fullscreen

3 ответа

1
Лучший ответ

чтобы получить поведение прокрутки, добавьте окружение ScrollView в свой макет, что сделает ваш метод ViewDialogScreen следующим:

private View ViewDialogScreen(String strText) {
    ScrollView scroll = new ScrollView(context);
    scroll.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
    LinearLayout llay = new LinearLayout(context);
    llay.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
    TextView tv = new TextView(context);
    tv.setText(strText);
    scroll.addView(llay);
    llay.addView(tv);
    return scroll;
}

Теперь попробуйте добавить еще несколько полей и прокрутить их.

  • 0
    Я уже пробовал это. Я могу прокручивать только по вертикали, но мне нужно прокрутить по горизонтали. Когда я добавляю HorizontalScroll, он не работает. После настройки LayoutParams я получил только тот же размер экрана.
  • 0
    Если вы хотите горизонтальную прокрутку, замените ScrollView на HorizontalScrollView и он автоматически добавит горизонтальную прокрутку при достижении максимальной ширины. Тем не менее, в настоящее время нет виджета, позволяющего одновременно прокручивать по горизонтали и вертикали (Google google). Но диалог будет растягиваться вертикально насколько это возможно.
Показать ещё 5 комментариев
0

Я не уверен, но вы можете настроить свой собственный макет для диалога. См. Мой ответ Android: диалог отклоняется, не вызывая отклонения

  • 0
    В приведенном выше коде я могу установить свой собственный макет, но размер Alert очень мал. Мне нужно показать, что в полноэкранном режиме / указан размер макета
  • 0
    Вы можете указать размер в XML. это?
Показать ещё 2 комментария
0

Если вы хотите настроить AlertDialog, вам необходимо создать Custom Dialog.

  • 0
    Спасибо за ваш ответ

Ещё вопросы

Сообщество Overcoder
Наверх
Меню