2009-12-20 65 views

回答

8

如果您为对话框和标题设置了自定义布局,则可以更改对话框的标题。我只用过这种方法完全去除头,但是这应该自定义页眉工作:

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

原来的对话框类似乎缺乏以设置图标的功能,但你可以轻松地扩展AlertDialog和设置自定义视图(你会用你的对话实例一样),你只需要像这样

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); 
    } 
}