HarmonyOS 如何设置背景透明度

希望提供可设置背景透明度的相关接口。

HarmonyOS
2天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
shlp

目前toast不支持自定义样式,可以考虑使用promptAction.openCustomDialog。(支持与页面解耦,支持自定义圆角、字体大小、颜色、背景等) demo如下:

import { BusinessError } from '@ohos.base';
import { ComponentContent } from "@ohos.arkui.node";

class Params {
  text: string = ""

  constructor(text: string) {
    this.text = text;
  }
}

@Builder
function buildText(params: Params) {
  Column() {
    Text(params.text).fontSize(50).fontWeight(FontWeight.Bold).margin({ bottom: 36 })
  }.backgroundColor('#FFF0F0F0').borderRadius(25)
}

@Entry
@Component
struct CustomDialog {
  @State message: string = "弹窗弹窗"

  build() {
    Row() {
      Column() {
        Button("click me").onClick(() => {
          let uiContext = this.getUIContext();
          let promptAction = uiContext.getPromptAction();
          let contentNode = new ComponentContent(uiContext, wrapBuilder(buildText), new Params(this.message));
          try {
            promptAction.openCustomDialog(contentNode);
          } catch (error) {
            let message = (error as BusinessError).message;
            let code = (error as BusinessError).code;
            console.error(`OpenCustomDialog args error code is ${code}, message is ${message}`);
          };
        })
      }.width('100%').height('100%')
    }.height('100%')
  }
}

参考:https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-arkui/js-apis-arkui-UIContext.md#opencustomdialog12

分享
微博
QQ
微信
回复
2天前
相关问题
SideBarContainer如何设置透明度
2365浏览 • 1回复 待解决
HarmonyOS 如何设置颜色透明度
785浏览 • 1回复 待解决
HarmonyOS Image UI 如何设置图片透明度
44浏览 • 1回复 待解决
设置子窗口透明度未生效
1746浏览 • 1回复 待解决
背景透明度问题解决方案
619浏览 • 1回复 待解决
HarmonyOS color颜色怎么指定透明度
800浏览 • 1回复 待解决
自定义颜色透明度如何实现?
396浏览 • 1回复 待解决
HarmonyOS 如何实现透明度的渐变效果
43浏览 • 1回复 待解决