HarmonyOS 鸿蒙Next AlertDialog API弹窗title及message居中显示方法

发布于 1周前 作者 htzhanglong 来自 鸿蒙OS

HarmonyOS 鸿蒙Next AlertDialog API弹窗title及message居中显示方法

在使用AlertDialog的API时候,弹窗显示的title以及message靠左显示,有没有方法能够设置成居中显示。

2 回复
目前AlertDialog的title和message不支持水平居中,可以考虑使用自定义弹窗实现title和message水平居中。
自定义弹窗请参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-methods-custom-dialog-box-V5

更多关于HarmonyOS 鸿蒙Next AlertDialog API弹窗title及message居中显示方法的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙系统中,要使AlertDialog API的弹窗title及message居中显示,可以通过自定义布局来实现。以下是具体方法:

  1. 创建自定义布局文件: 在resources/layout目录下创建一个XML文件,例如custom_alert_dialog.xml。在该文件中定义你的对话框布局,使用DirectionalLayoutStackLayout等容器,并设置title和message的文本视图,通过alignment属性将它们居中。

    <DirectionalLayout
        xmlns:ohos="http://schemas.huawei.com/res/ohos"
        ohos:alignment="center"
        ohos:orientation="vertical">
        <Text
            ohos:id="$+id:title"
            ohos:text_size="20fp"
            ohos:text="Title"
            ohos:margin_bottom="16fp"/>
        <Text
            ohos:id="$+id:message"
            ohos:text="Message"
            ohos:text_size="16fp"/>
    </DirectionalLayout>
    
  2. 在代码中设置自定义布局: 使用AlertDialog.BuildersetCustomView方法设置上述自定义布局。

    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setCustomView(ResourceTable.Layout_custom_alert_dialog);
    AlertDialog dialog = builder.create();
    dialog.show();
    
    // 获取自定义布局中的控件并设置内容
    Text title = (Text) dialog.findComponentById(ResourceTable.Id_title);
    Text message = (Text) dialog.findComponentById(ResourceTable.Id_message);
    title.setText("Your Title");
    message.setText("Your Message");
    

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部