如何更改Android Alert Dialog Title的背景

我想更改警报对话框的背景。 我已经尝试过下面的代码片段来做到这一点:

<style name="Theme.AlertDialog" parent="@android:style/Theme.Holo.Light.Dialog"> <item name="android:background">@android:color/transparent</item> <item name="android:textColor">#659F26</item> <item name="android:windowTitleStyle">@style/Theme.AlertDialog.Title</item> </style> <style name="Theme.AlertDialog.Title" parent="@android:style/TextAppearance.DialogWindowTitle"> <item name="android:background">@drawable/cab_background_top_example</item> </style> 

Java代码:

 ContextThemeWrapper ctw = new ContextThemeWrapper( this, R.style.Theme_AlertDialog); final AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(ctw); alertDialogBuilder.setTitle(getResources().getString(R.string.confirmation)); alertDialogBuilder.setMessage(getResources().getString(R.string.msg)); alertDialogBuilder.show(); 

我的应用程序显示这样的对话框:

在这里输入图像说明

而我希望它看起来像:

在这里输入图像说明

请build议,我做错了什么。

Solutions Collecting From Web of "如何更改Android Alert Dialog Title的背景"

创build对话框时使用此代码:

  dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); 

创build自己的布局由于许多自定义完成与标题然后设置您的布局

  dialog.setContentView(R.layout.yourlayout); 

注意:使用

 dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); before dialog.setContentView(R.layout.yourlayout); 

否则会发生错误。

 ContextThemeWrapper ctw = new ContextThemeWrapper( this, R.style.Theme_AlertDialog); 

在这一行中使用而不是“ this ”使用ActivityName.this