OpenHarmony 控制组件的显示和隐藏

luke 显示全部楼层 发表于 2023-12-6 10:50:19

在页面上有两个组件 image和video,现在需要根据变量值控制只显示一个,请问有什么属性可以控制吗,发现用visibility这个属性不能生效

build() {
    Row() {
      Column() {
        Video({
          src: this.videoUrl,
          // previewUri: this.previewUris,
          controller: this.controller
        })
          .muted(false) //设置是否静音
          .controls(false) //设置是否显示默认控制条
          .autoPlay(true) //设置是否自动播放
          .loop(false) //设置是否循环播放
          .objectFit(ImageFit.Contain) //设置视频适配模式
          .visibility(false)
          .onStart(() => {
            console.info('onStart')
          })
          .onPause(() => {
            console.info('onPause')
          })
          .onFinish(() => {
            console.info('onFinish')
            if (this.moren.length == 1) {
              this.videoUrl = this.moren[0].matterUrl
            } else {
              this.diaplayImgOrVideo();
            }
          })
          .onError(() => {
            //console.info('onError')
          })
          .onPrepared((e) => {
            //console.info('onPrepared is ' + e.duration)
          })
          .onSeeking((e) => {
            //console.info('onSeeking is ' + e.time)
          })
          .onSeeked((e) => {
            //console.info('onSeeked is ' + e.time)
          })
          .onUpdate((e) => {
            // console.info('onUpdate is ' + e.time)
          })

        Image(this.image).height('100%').width('100%').visibility(true)
      }
      .width('100%')
    }
    .height('100%')
  }
您尚未登录,无法参与评论,登录后可以:
参与开源共建问题交流
认同或收藏高质量问答
获取积分成为开源共建先驱

精彩评论4

马迪

沙发 发表于 2023-12-6 14:58:30
visibility的参数不是true,false吧,我看是个枚举参数
  1.   /**
  2.    * Controls the display or hide of the current component.
  3.    * @since 7
  4.    */
  5.   /**
  6.    * Controls the display or hide of the current component.
  7.    * @form
  8.    * @since 9
  9.    */
  10.   visibility(value: Visibility): T;
复制代码

luke

发表于 2023-12-6 15:17  IP属地: 江苏省扬州市

回复 马迪: 多谢,后面我也发现了

luke

发表于 2023-12-6 15:19  IP属地: 江苏省扬州市

回复 马迪: 有个问题请教您下,就是我这边会使用video播放一个视频和使用image显示一个图片,会通过变量控制是否显示,页面上一直都只会显示一个组件的内容,但是当从图片切到视频组件时,第二次播放视频时是不播放的,直接显示视频的最后一帧停在那里了,请问下是什么原因呢

luke

发表于 2023-12-6 15:59  IP属地: - 中国江苏省扬州市 中国电信IDC

回复 马迪: 可以了,我知道什么原因了,是videourl没有变化造成没有播放,我播放完以后先把videourl置为空然后再赋值就可以了

【3 条回复】

Copyright   ©2023  OpenHarmony开发者论坛  京ICP备2020036654号-3 |技术支持 Discuz!

返回顶部