云网牛站
所在位置:首页 > HarmonyOS问题与回答 > 安卓中的R.style.TransparentDialog属性能在鸿蒙OS中设置吗

安卓中的R.style.TransparentDialog属性能在鸿蒙OS中设置吗

2021-06-18 15:33:18作者:sunflower稿源:HarmonyOS站

问题:安卓中的dialog = new AlertDialog.Builder(activity, R.style.TransparentDialog)对应HarmonyOS的CommonDialog,R.style.TransparentDialog属性能在鸿蒙OS中可以设置吗?当前,使用window设置没有效果。

安卓中的R.style.TransparentDialog属性能在鸿蒙OS中设置吗

 

回答:

目前还不支持类似于安卓中R.style.TransparentDialog的属性。可以通过在resources/layout文件下自定义xml绑定到CommonDialog中,自定义的commonDialog样式跟随自定义的xml变化。代码如下:

1、在resoutces/layout下新建dialog.xml:

<?xml version="1.0" encoding="utf-8"?>

<DependentLayout

  ohos:id="$+id:ability_main"

  xmlns:ohos="http://schemas.huawei.com/res/ohos"

  ohos:width="match_parent"

  ohos:height="match_parent">

</DependentLayout>

2、java代码中初始化CommonDialog对象,并将dialog.xml绑定到commonDialog中,代码如下:

// 获取自定义的xml

Component componentXml = LayoutScatter.getInstance(context).parse(ResourceTable.Layout_dialog,

 null, false);

CommonDialog commonDialog = new CommonDialog(context);

// 绑定自定义的xml到commonDialog中

commonDialog.setContentCustomComponent(componentXml);

精选文章
热门文章