如何自定义对话框的标题布局

时间:2009-12-20 08:35:32

标签: android android-layout android-alertdialog android-dialog

在Android中,是否可以自定义对话框的页眉布局(图标+文本)布局?或者我可以设置标题文本的自定义字符串值吗?

谢谢。

2 个答案:

答案 0 :(得分:9)

如果为对话框和标题设置自定义布局,则可以更改对话框的标题。我只使用这种方法完全删除标题,但这应该适用于自定义标题:

dialog = new Dialog(context);
Window window = dialog.getWindow();
window.requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
dialog.setContentView(R.layout.my_dialog_layout);
window.setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.my_custom_header);

这有点复杂(因为你必须设置对话框的布局),但它比子类化Dialog更容易。

答案 1 :(得分:1)

原始的Dialog类似乎缺乏设置图标的能力,但您可以轻松扩展AlertDialog并设置自定义视图(与您的Dialog实例相同),您只需要这样的东西

 class MyDialog extends AlertDialog {
     public MyDialog(Context ctx) {
        super(ctx);
        LayoutInflater factory = LayoutInflater.from(context);
        View view = factory.inflate(R.layout.dialog_layout, null);
        setView(view);
        setTitle("MyTitle");
        setIcon(R.drawable.myicon);
     }
 }