Я делаю собственный диалог с прозрачным фоном окна, установленным в стиле.У меня есть еще одна кнопка в моей деятельности за диалоговым набором с тем же button_selector, что и с фоном, и он работает нормально, поэтому я знаю, что проблема связана со стилем, а точнее с атрибутом windowBackground.
Кто-нибудь знает, как я могу получить прозрачный фон окна для своего настраиваемого диалогового окна, но при этом позволяю моему селектору кнопок работать должным образом?
Включены изображения того, как он выглядит с фоном кнопки, установленным в@ drawable / lightblue1 и @ drawable / button_selector.
это мой стиль xml
<resources>
<style name="CustomDialogTheme" parent="@android:style/Theme.Dialog">
<item name="android:windowBackground">@color/transparent</item>
<item name="android:windowIsFloating">false</item>
<item name="android:windowNoTitle">true</item>
</style>
</resources>
Если я удалю строку <item name="android:windowBackground">@color/transparent</item>
, то мой селектор кнопок будет работать правильно, но мой диалогпоместите в фоновый контейнер контейнера системного фона по умолчанию.
Это мое объявление кнопки xml.Если я изменю @ drawable / button_selector на один из реальных png-файлов, то он будет отображаться правильно, но с помощью селектора мой фон кнопки станет прозрачным.
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/button_selector"
android:layout_marginBottom="15dp"
android:textSize="35sp"
android:text="@string/btnText1">
</Button>
Вот как я создаю диалог из Java:
Dialog dialog = new Dialog(TimeClock.this, R.style.CustomDialogTheme);
dialog.setContentView(R.layout.tag);
dialog.show();
Вот button_selector.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/darkblue1" /> <!-- pressed -->
<item android:state_focused="true"
android:drawable="@drawable/darkblue1" /> <!-- focused -->
<item android:drawable="@drawable/lightblue1" /> <!-- default -->
</selector>
РЕДАКТИРОВАТЬ: я закончил "подделывать" мой диалог с полупрозрачной деятельностью, чтобы я мог лучше контролировать еговнешний вид.
![with button set from the selector](https://i.stack.imgur.com/bdUy7.png)