如何在自定义主题中设置对话框样式?

时间:2013-04-18 10:48:25

标签: android

我尝试过很多方法,但我无法从xml更改AlertDialog样式。

我的结果是为扩展和覆盖默认值的对话框定义XML样式,然后将其绑定在我的主题中,这样所有的alertDialogs看起来都是一样的。

我试过了:

<style name="AppTheme" parent="AppBaseTheme">
    <!-- All customizations that are NOT specific to a particular API-level can go here. -->
    <item name="android:alertDialogStyle">@style/pippo</item>
</style>
<style name="pippo" parent="@android:style/Theme.Dialog">
    <item name="android:bottomBright">@android:color/holo_orange_dark</item>
    <item name="android:bottomDark">@android:color/holo_orange_dark</item>
    <item name="android:bottomMedium">@android:color/holo_orange_dark</item>
    <item name="android:centerBright">@android:color/holo_orange_dark</item>
    <item name="android:centerDark">@android:color/holo_orange_dark</item>
    <item name="android:centerMedium">@android:color/holo_orange_dark</item>
    <item name="android:fullBright">@android:color/holo_orange_dark</item>
    <item name="android:fullDark">@android:color/holo_orange_dark</item>
    <item name="android:topBright">@android:color/holo_blue_dark</item>
    <item name="android:topDark">@android:color/holo_blue_dark</item>
</style>

然后我将清单“AppTheme”作为活动主题,但我仍然看到正常的alertdialogs。

我哪里做错了?

1 个答案:

答案 0 :(得分:0)

你可以试试这样的东西来应用所需的风格:

AlertDialog.Builder builder = new AlertDialog.Builder(new ContextThemeWrapper(this, R.style. pippo));