介紹
本示例介紹了Video組件和@ohos.window接口實現(xiàn)媒體全屏的功能。 該場景多用于首頁瀑布流媒體播放等。
效果圖預覽
使用說明:
- 點擊全屏按鈕,橫屏媒體窗口。
- 點擊恢復窗口按鈕,恢復媒體窗口。
實現(xiàn)步驟
- 在Video組件內調用 onFullscreenChange 方法,實現(xiàn)媒體全屏效果。
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);
})
- 調用@ohos.window的 getLastWindow 方法獲取當前應用內最上層的子窗口,若無應用子窗口,則返回應用主窗口。
- 利用獲取到的窗口對象,調用 setWindowSystemBarEnable 方法設置窗口是否顯示導航欄和狀態(tài)欄。
- 調用窗口對象的 setPreferredOrientation 方法設置窗口旋轉方向以及是否應用重力感應。
window.getLastWindow(getContext(), (err: BusinessError, data) => {
const errCode = err.code;
if (errCode) {
return;
}
// 設置窗口是否顯示導航欄和狀態(tài)欄
data.setWindowSystemBarEnable(WINDOW_SYSTEM_BAR);
// 設置窗口旋轉方向以及是否應用重力感應
data.setPreferredOrientation(window.Orientation.PORTRAIT);
})
高性能知識點
- 本示例使用了LazyForEach?進行數(shù)據(jù)懶加載優(yōu)化,以降低內存占用和渲染開銷。
- 本示例使用了@Reusable復用組件優(yōu)化,提升應用性能。
工程結構&模塊類型
mediafullscreen // har
|---model
| |---BasicDataSource.ets // 數(shù)據(jù)類型文件
|---view
| |---MediaFullscreen.ets // 媒體全屏實現(xiàn)頁面
模塊依賴
不涉及
參考資料
Video
@ohos.window
LazyForEach
@Reusable
為了能讓大家更好的學習鴻蒙(HarmonyOS NEXT)開發(fā)技術,這邊特意整理了《鴻蒙開發(fā)學習手冊》(共計890頁),希望對大家有所幫助:https://qr21.cn/FV7h05
《鴻蒙開發(fā)學習手冊》:
如何快速入門:https://qr21.cn/FV7h05
- 基本概念
- 構建第一個ArkTS應用
- ……
開發(fā)基礎知識:https://qr21.cn/FV7h05
- 應用基礎知識
- 配置文件
- 應用數(shù)據(jù)管理
- 應用安全管理
- 應用隱私保護
- 三方應用調用管控機制
- 資源分類與訪問
- 學習ArkTS語言
- ……
基于ArkTS 開發(fā):https://qr21.cn/FV7h05
- Ability開發(fā)
- UI開發(fā)
- 公共事件與通知
- 窗口管理
- 媒體
- 安全
- 網(wǎng)絡與鏈接
- 電話服務
- 數(shù)據(jù)管理
- 后臺任務(Background Task)管理
- 設備管理
- 設備使用信息統(tǒng)計
- DFX
- 國際化開發(fā)
- 折疊屏系列
- ……
文章來源:http://www.zghlxwxcb.cn/news/detail-841747.html
鴻蒙開發(fā)面試真題(含參考答案):https://qr21.cn/FV7h05
文章來源地址http://www.zghlxwxcb.cn/news/detail-841747.html
騰訊T10級高工技術,安卓全套VIP課程全網(wǎng)免費送:https://qr21.cn/D2k9D5
到了這里,關于HarmonyOS NEXT應用開發(fā)—視頻全屏切換案例的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!