HarmonyOS 鸿蒙Next dialog自定义 如何完全去掉自带背景

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

HarmonyOS 鸿蒙Next dialog自定义 如何完全去掉自带背景

dialog自定义 如何完全去掉自带背景,使其完全透明
相关代码如下
private actionSheetDialogController: CustomDialogController = new CustomDialogController({
builder: ActionSheetDialog({
titleArr: [{ title: ‘百度地图’ }, { title: ‘高德地图’ }, { title: ‘Petal地图’ }],
itemClick: (index) => {

}
}),
backgroundColor: Color.Transparent,
alignment: DialogAlignment.Bottom,
cornerRadius: DT.rate(8),
});

2 回复

在HarmonyOS鸿蒙系统中进行Next dialog自定义时,若要去掉自带的背景,可以通过以下几种方式尝试实现:

  1. 设置透明背景:在Dialog的布局文件中,将根布局的背景色设置为透明(android:background="@android:color/transparent")。同时,在Dialog的Java或Kotlin代码中,通过getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT))来确保窗口背景也是透明的。

  2. 自定义Dialog样式:在styles.xml中定义一个无背景的Dialog样式,通过<item name="android:windowBackground">@android:color/transparent</item>来设置背景透明,然后在创建Dialog时应用这个样式。

  3. 调整Dialog的布局:确保Dialog的布局文件中没有包含任何带有默认背景的元素,如LinearLayout、RelativeLayout等,或者将这些元素的背景也设置为透明。

  4. 使用DialogFragment:如果使用的是DialogFragment,可以在其onCreateView方法返回的布局中设置透明背景,或者在onViewCreated方法中通过代码设置。

尝试上述方法后,Dialog的自带背景应该能够被去掉。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部