Учитывая, что рассуждения мистера Сноуфлэйка неточны, я позволю себе дать другой ответ.
Есть что-то неправильно с разметкой в вопросе Стива Хейли, и это смешивает alertDialogStyle и alertDialogTheme, скорее всего из-за того, что alertDialogTheme был введен задолго после того, как alertDialogStyle был вокруг.
Таким образом, даже если @android: style / Theme.Dialog.Alert доступен на вашей платформе Andoid, вы все равно не сможете использовать его выразительную мощь, подключив верную версию в свою собственную тему, если ваша платформа Android не поддерживает android: alertDialogTheme атрибут / элемент для тем. (Может быть, а может и нет, что такие несовместимые версии Android существуют, я точно не знаю. Но разметка, использованная в вопросе, предполагает, что это так.)
В разметке вопроса parent = "@ android: style / Theme.Dialog.Alert" ничего не будет делать , кроме создания иллюзии, что вы настраиваете тему диалога оповещения, когда вы действительно только настраивая стиль диалога предупреждения.
Вот так должна выглядеть разметка; не все версии Android поддерживают все функции.
<style name="myTheme" parent="android:Theme">
<item name="android:buttonStyle">@style/customButtonStyle</item>
<item name="android:alertDialogStyle">@style/dialogAlertStyle</item>
<item name="android:alertDialogTheme">@style/dialogAlertTheme</item>
</style>
<style name="dialogAlertStyle" parent="@android:style/AlertDialog">
<item name="android:fullDark">[...]</item>
[...]
</style>
<style name="dialogAlertTheme" parent="@android:style/Theme.Dialog.Alert">
<item name="android:windowBackground">[...]</item>
[...]
</style>
Настройка стиля диалога предупреждений существует довольно давно, но ограничивается предоставлением (фонового) рисования для «fullDark», «topDark» и т. Д.
Настройка темы диалогового окна оповещения открывает метод для предоставления таких атрибутов, как windowBackground, windowTitleStyle и т. П., Но, как указано выше, вам нужна версия Android, которая поддерживает атрибут / элемент alertDialogThem для тем. Я не могу точно понять, когда это было введено, но это не был Android 2.2, и Eclipse все равно скажет вам ...
У меня нет ресурсов для проверки вывода MrSnowflake о том, что невозможно стилизовать диалоговые кнопки предупреждений в XML, но если мы не столкнулись с одним из тех неприятных аспектов Android, где функция действительно отсутствует, я нахожу это маловероятным .
На самом деле, то, что отсутствует в вопросе, является наиболее важной частью в этом отношении, а именно
<style name="customButtonStyle" />
поэтому вывод о том, что кнопки оповещения не подчиняются Widget.Button, с моей точки зрения, еще не доказан.
Сводный вывод: В Android ограничены возможности стилизовать диалоги оповещений независимо от других виджетов, но они становятся все более мощными по мере улучшения новых версий в этом отношении.