Применить тему «Диалог» для Android и правильно определить ее размер - PullRequest
1 голос
/ 21 июля 2010

У меня есть действие, которое я хотел бы выполнять в диалоге.Есть ли способ сделать это из кода, а не из манифеста?Я пытался сделать это, но, похоже, ничего не дало.

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setTheme(R.style.Theme_Dialog);
}

Кроме того, действие содержит веб-просмотр, и когда оно начинается в виде диалога, оно получает небольшое количество контента, и диалогоколо 100 пикселей в высоту.Когда содержимое заполняется, оно прокручивается в крошечном окне высотой 100 пикселей в диалоговом окне.Как сделать так, чтобы диалог занимал больше вертикального пространства?

Ответы [ 3 ]

4 голосов
/ 30 марта 2011

Вы можете легко сделать это через XML.Просто используйте XML-файл «themes.xml» и поместите его в папку значений.

Вот базовый пример, который реализует пользовательский фон:

<resources>
    <style name="my_theme" parent="@android:style/Theme.Dialog">
        <item name="android:windowBackground">@drawable/custom_background</item>
    </style>
</resources>

Вам также понадобитсядобавить следующую строку в секцию требуемого действия манифеста:

 android:theme="@style/my_theme"

PS: я понимаю, что это старая ветка, но, надеюсь, это кому-то все же поможет:)

0 голосов
/ 03 февраля 2012

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

https://stackoverflow.com/a/1975508/371749

0 голосов
/ 21 июля 2010

Я не знаю, как установить тему диалога из кода.

Диалог в основном настолько большой, насколько это необходимо для содержания, поэтому, если вы хотите, чтобы он был больше, вам нужно увеличить какой-то компонент в вашем представлении. Возможно, вы можете установить высоту веб-просмотра на что-то большее. Обратите внимание, используйте dpi, а не px!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...