#鸿蒙通关秘籍#如何在HarmonyOS中实现视频的全屏切换功能?

HarmonyOS
2024-12-06 15:12:51
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Yvr交响CMO

在HarmonyOS中,通过使用Video组件和@ohos.window接口,可以实现视频全屏切换。以下是详细步骤:

  1. 在Video组件中调用onFullscreenChange方法,用于实现媒体全屏效果。代码如下:

    Video({
        src: $rawfile(this.moment.media),
        previewUri: $r(`app.media.${this.moment.mediaPreview}`)
    })
    .width($r('app.integer.friendMomentsPage_single_video_width'))
    .height($r('app.integer.friendMomentsPage_single_video_height'))
    .objectFit(ImageFit.Contain)
    .onFullscreenChange(() => {
        this.windowChange(this.isFullscreen);
    })
    
  2. 通过调用@ohos.windowgetLastWindow方法,获取当前应用内最上层的子窗口,如果没有子窗口,则返回应用主窗口。

  3. 使用获取的窗口对象,通过setWindowSystemBarEnable方法设置窗口是否显示导航栏和状态栏。

  4. 调用setPreferredOrientation方法设置窗口的旋转方向和重力感应。示例如下:

    window.getLastWindow(getContext(), (err: BusinessError, data) => {
        const errCode = err.code;
        if (errCode) {
            return;
        }
        data.setWindowSystemBarEnable(WINDOW_SYSTEM_BAR);
        data.setPreferredOrientation(window.Orientation.PORTRAIT);
    })
    
分享
微博
QQ
微信
回复
2024-12-06 17:53:03
相关问题