首页 > 其他分享 >[HarmonyOS Next示例代码]视频横竖屏切换

[HarmonyOS Next示例代码]视频横竖屏切换

时间:2024-09-07 12:23:11浏览次数:10  
标签:ets 全屏播放 视频 示例 旋转 HarmonyOS Next

HarmonyOS next 示例代码全集

HarmonyOS_Samples/LandscapePortraitToggle

视频横竖屏切换

介绍

本示例实现了视频播放的横竖屏自动切换功能

效果预览

竖屏横屏

portrait.png

landscape.png

使用说明

1.下拉状态栏打开关闭“旋转锁定”开关,打开app进入视频播放详情页,旋转手机到横屏或者点击视频右下角的图标,视频会进行全屏播放。

2.全屏播放时,点击左上角“返回”图标或者将手机由横屏变为竖屏,视频退出全屏播放模式。

3.全屏播放时,点击左边中间的“锁定”图标,视频播放始终处于锁定状态,旋转屏幕视频不会旋转;点击“解锁”图标,如果状态栏中的“旋转锁定”开关是关闭状态,再次旋转屏幕视频会跟随旋转,否则不会旋转

目录结构

├──entry/src/main/ets/
│  ├──entryability
│  │  └──EntryAbility.ets          // Ability的生命周期回调内容
│  ├──pages
│  │  └──VideoDetail.ets           // 视频详情页
│  ├──util 
│  │  ├──AVPlayerUtil.ets          // 视频播放工具类     
│  │  └──Logger.ets                // 日志工具类
│  │──viewmodel                  
│  │  ├──CommentModel.ets          // 评论模型
│  │  └──RelatedModel.ets          // 相关列表模型
│  └──views                 
│     ├──BottomView.ets            // 底部操作栏组件
│     ├──CommentsView.ets          // 评论列表组件
│     ├──RelatedListView.ets       // 视频相关推荐组件
│     └──VideoPlayView.ets         // 视频播放组件
└──entry/src/main/resources        // 应用静态资源目录

具体实现

相关权限

不涉及

依赖

不涉及。

约束与限制

1.本示例仅支持标准系统上运行,支持设备:华为手机。

2.HarmonyOS系统:HarmonyOS NEXT Developer Beta5及以上。

3.DevEco Studio版本:DevEco Studio NEXT Developer Beta5及以上。

4.HarmonyOS SDK版本:HarmonyOS NEXT Developer Beta5 SDK及以上。

标签:ets,全屏播放,视频,示例,旋转,HarmonyOS,Next
From: https://blog.csdn.net/zhangtian6691844/article/details/141967940

相关文章

  • [HarmonyOS Next示例代码]用户认证登录
    HarmonyOS next示例代码全集UserAuth:本示例主要使用人脸和指纹认证用户身份、使用密码保险箱实现密码自动填充以及涉及口令输入的应用界面防截屏或录屏等功能的实现方式。用户认证登录介绍本示例主要使用人脸和指纹认证用户身份、使用密码保险箱实现密码自动填充以及涉......
  • 关于HarmonyOS的学习
    day22一、DOM   +文档对象模型   +在DOM的世界里面,把所有的标记称之为节点,把标记的结构称之为DOM树   +告诉咱们标记在文档里面是以树形结构存在的   +节点分类    =>document文档节点    =>eLement标记节......
  • 关于HarmonyOS的学习
    day23一、DOM尺寸和位置1.只能获取到内联style属性的CSS样式中的宽和高,如果有,获取;如果没有,则返回空$('.box1').style.width$('.box1').style.height$'.box1').style.backgroundColor2.返回了元素大小,但没有单位,默认单位是px,如果设置了其他的单位,比如100em之类,返回出来的......
  • 关于HarmonyOS的学习
    day24一、事件流    +称之为DOM事件流,因为是事件肯定是绑定给DOM元素的    +咱们在页面里面给元素注册(绑定)了事件,那么事件和事件之间会进行传递,而事件传递是由规则的,把这个规则称之为事件流    +完整事件流     =>捕获阶段---事......
  • 关于HarmonyOS的学习
    day21一、window对象常用方法  //提示信息,带有确认和取消。如果确认返回的是true,取消返回的是false  //varres=confirm('你确定登录吗?')  //console.log(res)​  varbtn1=document.querySelectorAll('button')[0]  varbtn2=document.qu......
  • 20 个冷邮件主题行示例——实际有效的(图表)
    编写有效的冷邮件是一项挑战,因为你和目标受众之间没有先前的联系。市场人员对此策略感到沮丧,因为反馈几乎不存在,而且消息往往会被淹没在垃圾邮件文件夹中。一般来说,如果邮件是个性化的、相关且及时的,你预计大约有20%到25%的潜在客户会打开你的邮件。然而,如果缺乏人情味,Mailchi......
  • CPU亲和性设置视频解析,代码示例 sched_setaffinity sched_getaffinity, CPU_ZERO、CP
    视频教程在这:cpu亲和性设置,NCCL,sched_setaffinitysched_getaffinity,CPU_ZERO、SET、ISSET、linux_哔哩哔哩_bilibili一、CPU亲和性简介CPU亲和性(CPUAffinity)设置是操作系统中一个重要的性能优化手段,它允许程序或进程被绑定到特定的CPU核心上运行。这样做的好处包括减少缓存未命中......
  • FPGA状态机编程示例
     两段式状态机moduledetect_2(  inputclk_i,  inputrst_n_i,  outputout_o);regout_r;//状态声明和状态编码reg[1:0]Current_state;reg[1:0]Next_state;parameter[1:0]S0=2'b00;parameter[1:0]S1=2'b01;parameter[1:0]S2=2'b10;pa......
  • django中间件(认证+权限)【示例】
    fromdjango.utils.deprecationimportMiddlewareMixinfromdjango.shortcutsimportredirect,HttpResponsefromdjango.urlsimportreversefromwwwimportmodelsclassAuthMiddleware(MiddlewareMixin):defprocess_request(self,request):ifreq......
  • 使用同步锁的代码示例7
    使用同步锁的代码示例packageorg.zyf.javabasic.thread.lock.opti;importjava.util.concurrent.locks.ReentrantLock;/***@program:zyfboot-javabasic*@description:使用了ReentrantLock来保护对共享资源(counter)的访问,确保同一时间只有一个线程可以对计数器......