HarmonyOS鸿蒙Next中AVPLAYER设置全屏都是怎么弄的?

HarmonyOS鸿蒙Next中AVPLAYER设置全屏都是怎么弄的? avplayer 设置全屏,目前试过的:

  1. 如果用getMainWindow,怎么返回啊!?一点返回键,就直接推出 APP 了,或者重新把 Window 设置成最初的 tabPage,所有页面又都初始化状态了。

  2. 如果设置createSubWindow,状态栏和返回键都无法隐藏。

  3. 修改播放器的尺寸,也不行。因为播放器的组件外部嵌套了两层 Tabs 组件。

还有什么方法实现全屏效果吗?

6 回复

可以提供demo吗?看看你的demo是怎么写的?方便分析。

更多关于HarmonyOS鸿蒙Next中AVPLAYER设置全屏都是怎么弄的?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


要不新建一个页面,将原页面的视频播放停止,返回时再将进度传回原页面,让原页面刷新,这是取巧的方式,最简单,只是在性能上和开发步骤上麻烦点。

还有通过组件的显隐控制、浮层控制。全屏时,直接把其他组件都隐藏掉。

至于通过子窗口,这不太熟,但是了解过,可以通过设置窗口尺寸、是否允许全屏来实现(沉浸式体验)。官方文档:

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V2/application-window-stage-0000001427584712-V2

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V2/js-apis-window-0000001477981397-V2#ZH-CN_TOPIC_0000001573929313__windowstage9

找HarmonyOS工作还需要会Flutter技术的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:BV1S4411E7LY/?p=17

楼主解决了吗? 想通过点击全屏按钮,实现视频的全屏,目前没有找到方法。

在HarmonyOS鸿蒙Next中,实现AVPlayer全屏播放可以通过以下步骤完成:

  1. 设置布局:使用DirectionalLayoutDependentLayout等布局容器,将AVPlayer的播放界面放置在合适的布局位置。

  2. 创建AVPlayer实例:通过AVPlayer.create(context)创建AVPlayer实例,并设置视频源。

  3. 设置全屏模式:通过AVPlayer.setDisplayFullScreen(true)方法将播放器设置为全屏模式。

  4. 调整播放器尺寸:在布局中,将AVPlayer的宽高设置为MATCH_PARENT,使其占满整个屏幕。

  5. 处理屏幕旋转:在onConfigurationChanged方法中,根据屏幕方向调整播放器布局,确保全屏播放时界面适配。

  6. 控制播放器状态:在全屏模式下,通过AVPlayer.play()AVPlayer.pause()等方法控制播放器的播放状态。

  7. 退出全屏:通过AVPlayer.setDisplayFullScreen(false)退出全屏模式,并调整布局恢复原始状态。

通过这些步骤,可以在HarmonyOS鸿蒙Next中实现AVPlayer的全屏播放功能。

在HarmonyOS鸿蒙Next中,使用AVPlayer设置全屏可以通过以下步骤实现:

  • 首先,获取AVPlayer实例并设置其显示视图为全屏。
  • 接着,调用setFullScreen(true)方法,将播放器切换到全屏模式。
  • 此外,确保在布局文件中将播放器视图的宽高设置为匹配父容器,以实现全屏效果。
  • 最后,处理屏幕旋转事件,确保播放器在设备旋转时自动适应全屏状态。
回到顶部