0

我想为我的CustomAlert. 我要为对话框标题的自定义布局做什么?

Edit2:我添加了我的代码:

    protected Dialog onCreateDialog(int id) 
        {           
            switch(id)
            {           
            case Dialog_Reset :     
            Dialog dialog=new Dialog(this);
            dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
            dialog.setContentView(R.layout.about);  
            dialog.setCanceledOnTouchOutside(true);         
            return dialog;
            }
            return super.onCreateDialog(id);
       } 

因为我不喜欢对话框中的默认标题,所以我现在将其删除,同时我学习使用自定义标题。

4

2 回答 2

1

但我不明白什么是“titleId”。真的是什么?是我想用于标题的特殊布局吗?

titleId: 标题标识符,也就是字符串资源标识符,例如R.string.app_name. 您可以strings.xmlres>values文件夹中添加这些内容

Android 开发文档:Dialog.setTitle (int titleId)

更多关于字符串资源的信息在这里

于 2013-10-30T11:43:18.323 回答
0

您可以设置CustomTitle您的Alert Dialog使用public AlertDialog.Builder setCustomTitle (View customTitleView)方法。

根据文档

public AlertDialog.Builder setCustomTitle (查看 customTitleView)

使用自定义视图 customTitleView 设置标题。方法 setTitle(int) 和 setIcon(int) 对于大多数标题来说应该足够了,但如果标题需要更多自定义,则提供此方法。使用它将替换通过其他方法设置的标题和图标。

参数 customTitleView 用作标题的自定义视图。返回此 Builder 对象以允许链接对 set 方法的调用

例子

LayoutInflater inflater = (LayoutInflater)yourClass.this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View yourView= inflater.inflate(R.layout.custom_dialog, null);

AlertDialog.Builder ab= new AlertDialog.Builder(this);
ab.setCustomTitle(yourView);
ab.setMessage(message);
...


 ab.create();
 ab.show();

有关详细信息,请参阅文档

于 2013-10-30T11:56:30.220 回答