HarmonyOS 鸿蒙Next能否单独设置背景透明度,按官方文档的opacity会导致包括背景和内容都会变得透明

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

HarmonyOS 鸿蒙Next能否单独设置背景透明度,按官方文档的opacity会导致包括背景和内容都会变得透明

鸿蒙能不能单独设置背景透明度,按官方文档的opacity会导致包括背景和内容都会变得透明

2 回复

因为opacity 是设置组件的透明度,可以这样设置

参考代码

[@Entry](/user/Entry)

[@Component](/user/Component)

struct TestPage {

  [@State](/user/State) message: string = 'Hello World';

  build() {

    Column() {

      Row() {

        Text(this.message)

          .fontWeight(FontWeight.Bold)

      }

      .width(200)

      .height(200)

      .backgroundColor('#50ffffff')

      // .opacity(0.5)

    }

    .backgroundColor(Color.Brown)

    .height('100%')

    .width('100%')

  }

}

HarmonyOS 鸿蒙Next能否单独设置背景透明度

在HarmonyOS 鸿蒙Next中,opacity属性用于设置组件的整体透明度,包括背景和内容。因此,按照官方文档的opacity设置确实会导致包括背景和内容都会变得透明。

要实现单独设置背景透明度的效果,你可以尝试使用rgba颜色值来设置背景色。rgba颜色值允许你指定红、绿、蓝三个颜色通道的值以及一个alpha通道的值(即透明度)。通过调整alpha通道的值,你可以在不改变内容透明度的情况下改变背景的透明度。

例如,你可以使用如下代码来设置背景透明度:

Text().width('90%').height(50).backgroundColor('rgba(0, 0, 255, 0.5)')

上述代码中,'rgba(0, 0, 255, 0.5)'表示一个半透明的蓝色背景。

请注意,如果父组件设置了透明度,子组件可能会继承这一透明度设置。如果你希望子组件不受父组件透明度影响,可以在子组件上显式设置其透明度属性。

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

回到顶部