Custom dialog和Builder对话框有不同的主题

时间:2012-06-06 15:40:18

标签: android user-interface android-dialog android-theme

对于我的大多数Android应用程序对话框,我使用Builder的内置方法,例如setSingleChoiceItems,但我需要使用自己的视图自定义AlertDialogs的2-3个对话框。

自定义对话框与现成对话框(文本大小,背景等)非常不同。

如何让我的自定义对话框看起来像Builder? 我没有为任何对话框指定任何主题。

我使用带有setSingleChoiceItems(...)方法的AlertDialog.Builder创建了这个。

Created using AlertDialog.Builder

这是使用builder.setView(layout)创建的。

Created using a View

2 个答案:

答案 0 :(得分:0)

您可以将自定义视图与 setView 一起使用,但我建议使用DialogFragment,在DialogFragment中,您可以使用任何查看,只需查看onClickListener等事件处理程序。

答案 1 :(得分:0)

试试这个

在对话框中设置自定义主题以设置背景,没有对话框标题,如下所示

<style name="ActivityDialog" parent="@android:style/Theme.Dialog">      
    <item name="android:windowBackground">@drawable/dialog_background_image</item>
    <item name="android:windowNoTitle">true</item>      
    </style>

并制作UI

的布局
protected void createDialog() {
         // TODO Auto-generated method stub

             dialog = new Dialog(this,R.style.ActivityDialog);//this take context and style parameter

             dialog.setContentView(R.layout.dialogUI); // here load coustom UI layout 



             Button okbtn = (Button)dialog.findViewById(R.id.button1);
             Button cancelbtn = (Button)dialog.findViewById(R.id.rep_cancel_Button);
             okbtn .setOnClickListener(okClickListener);
             cancelbtn .setOnClickListener(cancelClickListener);

             dialog.show();

        }