Я создаю маленькую игру для Android. На данный момент я просто создаю пользовательский интерфейс для экрана меню.Пользовательский фон диалога действует очень странно
Как я делаю деревянную тему, я также хочу использовать пользовательский диалог для показа рекордов и т. Д., Поэтому он следует за темой.
Я нашел несколько полезных руководств, но у меня есть эта очень странная проблема с фоном диалога. Диалог почти прозрачен.
То, что я сделал: - создал dialog_theme.xml с:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Dialog" parent="android:Theme">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowIsFloating">true</item>
<item name="android:backgroundDimEnabled">false</item>
</style>
</resources>
- создал custom_dialog.xml с элементами мне нужно (TextView для заголовка и содержимого, а также кнопку, чтобы закрыть)
- создал класс CustomDialog, который расширяет Dialog и позволяет мне легко создавать эти пользовательские диалоги с содержанием и заголовком. Я хочу
- с помощью CustomDialog в действии для создания диалогового окна
(главный гид я использовал для этого blog.androgames.net/10/custom-android-dialog/)
Проблемы заключается в том, что прозрачный фон не всегда прозрачный (показывая пользовательский интерфейс активности в фон). В этом меню есть 4 пользовательских кнопки. Проблема заключается в том, что вместо того, чтобы просто показывать диалог прозрачным и показывать весь ui в фоновом режиме, одно из изображений для кнопки растягивается и заполняет весь диалоговый фон. Если я просто использую стандартный фон для этой одной кнопки, то диалоговый фон прозрачен и отображает активность ui в фоновом режиме.
Как я мог бы неплохо объяснить я покажу фотографии того, что я имею в виду: - код для кнопки, которая вызывает проблему:
<Button
android:id="@+id/id_about_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_below="@+id/id_achievements_button"
android:layout_marginTop="15dp"
android:background="@drawable/selector_about" />
дает этот результат: (извините, но я не могу использовать изображения непосредственно в пост еще) http://dl.dropbox.com/u/2980431/wrong.png
Изменение код кнопки:
<Button
android:id="@+id/id_about_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_below="@+id/id_achievements_button"
android:layout_marginTop="15dp"/>
Giv es this result: http://dl.dropbox.com/u/2980431/correct.png
Надеюсь, что кто-то понял, почему это происходит, и решение исправить это - если честно, я полностью потерян.
Являются ли файлы для кнопок фоны одинакового размера? Если вы используете 'android: layout_width =" wrap_content ", они будут растягиваться до их полного размера. – silleknarf
Да, все файлы для фона имеют одинаковый размер. У меня есть еще три кнопки со сходными селекторами, определяющими их фон, и это не вызывает никаких проблем. Сама кнопка отлично работает с фоном. – Knirkegaard