2012-03-26 3 views
1

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

Я установил тему активности на @android: style/Theme.Dialog, но теперь я хочу переопределить существующую тему, но я не нашел эту тему в моей папке sdk.

Может кто-нибудь сказать мне, как я могу изменить тему диалога по умолчанию?

ответ

11

Вы можете определить стили для настройки любого вида.

Например:

<style name="Theme.Dialog"> 
    <item name="android:windowFrame">@null</item> 
    <item name="android:windowTitleStyle">@android:style/DialogWindowTitle</item> 
    <item name="android:windowBackground">@android:drawable/transparent</item> 
    <item name="android:windowIsFloating">true</item> 
    <item name="android:windowContentOverlay">@null</item> 
    <item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item> 
    <item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item> 
</style> 
+0

Великий. thks для вашего ответа. как узнать, какие свойства имеют объект диалога? и какой тип анимации и т. д. – Allrast

+2

@Allrast: чтобы узнать все доступные опции, вы можете проверить источник android и посмотреть в [styles.xml] (https://github.com/android/platform_frameworks_base/blob/master/ core/res/res/values ​​/ styles.xml) и [themes.xml] (https://github.com/android/platform_frameworks_base/blob/master/core/res/res/values/themes.xml). В этом случае для диалогов, checkout themes.xml -> Theme.Dialog. Все атрибуты, определенные внутри него, обычно являются теми, которые вы можете изменить. –

Смежные вопросы