精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

沉浸式界面開發—OpenHarmony

系統 OpenHarmony
沉浸式的設置最好放在Ability的OnWindowStageCreate的生命周期里,此時剛好可以獲取窗口的信息,放在頁面頁面生命周期里會出現窗口大小不一致,影響體驗。

想了解更多關于開源的內容,請訪問:

51CTO 開源基礎軟件社區

https://ost.51cto.com

場景說明

沉浸式界面通常是指全屏顯示,即當前畫面占據整個屏幕。畫面放大的同時,讓用戶擺脫無關信息的干擾,帶給用戶沉浸式的體驗。常見的場景有:視頻播放、游戲等。本例即為大家介紹如何開發沉浸式界面。

效果呈現

本例中的沉浸式界面有三種實現方式,對應效果如下:

方案一:顏色背景鋪滿

方案二:圖片背景鋪滿

方案三:背景鋪滿的同時、狀態欄不可見

沉浸式界面開發(OpenHarmony)-開源基礎軟件社區

沉浸式界面開發(OpenHarmony)-開源基礎軟件社區

沉浸式界面開發(OpenHarmony)-開源基礎軟件社區

運行環境

本例基于以下環境開發,開發者也可以基于其他適配的版本進行開發:

  • IDE: DevEco Studio 3.1 Beta2
  • SDK: Ohos_sdk_public 3.2.11.9(API Version 9 Release)

實現思路

如果一個應用想要獲得沉浸式的體驗,開發者可以通過以下三種方式進行實現:

  • 顏色背景通鋪:使應用頁面的背景色和狀態欄、導航欄的背景色一致。可通過setWindowSystemBarProperties進行設置。
  • 圖片背景通鋪:將狀態欄、導航欄的背景色設置為透明以便呈現應用界面的背景,同時通過 windowClass.on接口獲取到狀態欄、導航欄的區域信息,進行規避處理,以免狀態欄、導航欄的內容遮擋住應用內容。
  • 隱藏導航欄和狀態欄:使用setWindowSystemBarEnable設置導航欄和狀態欄為隱藏狀態。

說明:
沉浸式的設置最好放在ability的onWindowStageCreate的生命周期里,此時剛好可以獲取窗口的信息,放在頁面頁面生命周期里會出現窗口大小不一致,影響體驗。

下文將分別介紹這三種方案的具體開發步驟。

開發步驟

顏色背景通鋪

此方案通過調用setWindowSystemBarProperties接口將狀態欄和導航欄的背景色設置為跟應用窗口相同的顏色,以達到界面全屏的效果。

具體代碼如下:

import window from '@ohos.window';
import common from '@ohos.app.ability.common';
 
@Entry
@Component
struct Type2 {
  @State message: string = 'Hello World'
  // 獲取UIAbility上下文
  context: common.UIAbilityContext = getContext(this) as common.UIAbilityContext
  async setSystemBar() {
    // 獲取當前應用窗口
    let windowClass:window.Window = await window.getLastWindow(context)
    // 將狀態欄和導航欄的背景色設置為跟應用窗口相同的顏色
    await windowClass.setWindowSystemBarProperties({
      navigationBarColor: "#00FF00",
      statusBarColor: "#00FF00",
      navigationBarContentColor: "#00FF00",
      statusBarContentColor: "#00FF00"
    })
  }
 
  aboutToAppear() {
    this.setSystemBar()
  }
 
  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
      }
      .width('100%')
    }
    .height('100%')
  }
}

此方案的優勢在于不需要處理應用窗口和狀態欄、導航欄窗口的遮擋關系,因為此方案沒有使用setWindowLayoutFullScreen 接口設置沉浸式布局,所以三個窗口是平鋪的,不會重疊。劣勢在于無法將應用的背景圖等信息延伸到狀態欄、導航欄窗口中。適用于扁平化設計風格的應用。

圖片背景通鋪

這種方案可以實現圖片背景的通鋪,同時又能避免狀態欄和導航欄的內容跟應用內容相互遮擋,導致顯示效果異常。
為了能讓應用的有效顯示范圍避開系統的狀態欄和導航欄,以免內容重疊,我們可以通過windowClass.on(type: ‘avoidAreaChange’, callback: Callback<{AvoidAreaType, AvoidArea}>) 獲取系統規避區域的大小,并對這一塊區域做出相應的規避。
其中回調參數AvoidArea是規避區域,可以通過其獲取規避區域的具體范圍;AvoidAreaType是規避區域的類型其取值如下,示例中需要規避的狀態欄和導航欄屬于TYPE_SYSTEM類型。

名稱

說明

TYPE_SYSTEM

0

表示系統默認區域。

TYPE_CUTOUT

1

表示劉海屏區域。

TYPE_SYSTEM_GESTURE9+

2

表示手勢區域。

TYPE_KEYBOARD9+

3

表示軟鍵盤區域

具體代碼如下:

page代碼

// index.ets
@Entry
@Component
struct Type3 {
  @State message: string = 'Hello World'
  @StorageLink("topHeight") topHeight: number = 0
  @StorageLink("bottomHeight") bottomHeight: number = 0
 
  build() {
    Column() {
      // 在界面頂部放置一個Row組件,用于占位
      Row() {
 
      }
      .width("100%")
      // 設置Row組件的高度為狀態欄的高度,可避免界面內容與狀態欄內容重疊
      .height(px2vp(this.topHeight))
      Row() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
          .position({ x: 0, y: 0 })
      }
      .width("100%")
      .flexGrow(1)
      // 在界面底部放置一個Row組件,用于占位
      Row() {
 
      }
      .width("100%")
      // 設置Row組件的高度為導航欄的高度,可避免界面內容與導航欄內容重疊
      .height(px2vp(this.bottomHeight))
    }
    .backgroundImage($r("app.media.icon"))
    .backgroundImageSize(ImageSize.Cover)
    .width("100%")
    .height("100%")
  }
}

ability代碼

// MainAbility.ts
import window from '@ohos.window';

async function enterImmersion(windowClass: window.Window) {
    // 獲取狀態欄和導航欄的高度
    windowClass.on("avoidAreaChange", ({ type, area }) => {
        if (type == window.AvoidAreaType.TYPE_SYSTEM) {
            // 將狀態欄和導航欄的高度保存在AppStorage中
            AppStorage.SetOrCreate<number>("topHeight", area.topRect.height);
            AppStorage.SetOrCreate<number>("bottomHeight", area.bottomRect.height);
        }
    })
    // 設置窗口布局為沉浸式布局
    await windowClass.setWindowLayoutFullScreen(true)
    await windowClass.setWindowSystemBarEnable(["status", "navigation"])
    // 設置狀態欄和導航欄的背景為透明
    await windowClass.setWindowSystemBarProperties({
        navigationBarColor: "#00000000",
        statusBarColor: "#00000000",
        navigationBarContentColor: "#FF0000",
        statusBarContentColor: "#FF0000"
    })
}

export default class MainAbility extends Ability {
  ...
  async onWindowStageCreate(windowStage: window.WindowStage) {
    let windowClass:window.Window = await windowStage.getMainWindow()
    await enterImmersion(windowClass)
    windowStage.loadContent('pages/page5')
  }
  ...
}

隱藏狀態欄、導航欄

隱藏狀態欄、導航欄可以達到完全沉浸的效果,使用setWindowSystemBarEnable接口即可實現。

具體代碼如下:

import window from '@ohos.window';
import common from '@ohos.app.ability.common';

@Entry
@Component
struct Type3 {
  @State message: string = 'Hello World'
  context: common.UIAbilityContext = getContext(this) as common.UIAbilityContext
  async setSystemBar() {
	let windowClass = await window.getLastWindow(context)
	//設置導航欄,狀態欄不可見
	await windowClass.setWindowSystemBarEnable([])
  }

  aboutToAppear() {
	this.setSystemBar()
  }

  build() {
	Row() {
	  Column() {
		Text(this.message)
		  .fontSize(50)
		  .fontWeight(FontWeight.Bold)
	  }
	  .width('100%')
	}
	.backgroundColor("#ffee33")
	.height('100%')
  }
}

想了解更多關于開源的內容,請訪問:

51CTO 開源基礎軟件社區

https://ost.51cto.com

責任編輯:jianghua 來源: 51CTO 開源基礎軟件社區
相關推薦

2016-11-18 08:41:23

2022-11-23 14:47:29

北向開發鴻蒙

2022-08-23 16:07:02

ArkUI鴻蒙

2022-04-15 11:32:20

IDE工具鴻蒙操作系統

2022-09-02 15:17:04

ArkUI鴻蒙

2023-04-25 16:30:58

設備開發鴻蒙

2017-02-17 11:00:57

狀態欄Android

2022-08-08 19:46:26

ArkUI鴻蒙

2022-03-16 15:30:25

barAndroid開發者

2022-02-17 18:08:04

OpenHarmon應用開發鴻蒙

2022-09-26 15:16:03

ArkUITS

2021-10-28 19:23:27

界面嵌入式 UI

2023-04-21 15:54:08

應用開發鴻蒙

2022-10-12 15:00:02

設備開發應用開發

2022-03-02 16:08:31

Harmony應用開發鴻蒙

2024-04-09 09:34:36

鴻蒙系統燒錄操作系統

2023-02-20 15:38:38

2023-02-20 15:29:14

分布式相機鴻蒙

2023-02-21 16:41:41

分布式相機鴻蒙

2022-11-03 15:04:44

VRAR數字化轉型
點贊
收藏

51CTO技術棧公眾號

福利视频第一页| 日本www.色| 天堂中文字幕在线| 日韩高清国产一区在线| 久久久av亚洲男天堂| 性感美女一区二区三区| 你懂得影院夜精品a| 亚洲精品视频一区二区| 久久一区二区精品| 国产精品亚洲欧美在线播放| 中文亚洲字幕| 久热在线中文字幕色999舞| 国产激情第一页| 久久青草免费| 懂色av影视一区二区三区| 一区二区三区久久网| 日本人妻丰满熟妇久久久久久| 男人操女人的视频在线观看欧美| 欧美国产亚洲视频| 国产精品久久久免费看| 日韩深夜福利| 日韩欧美一区二区久久婷婷| 北条麻妃视频在线| 538在线精品| 亚洲蜜桃精久久久久久久| 日本一区二区免费看| 韩国av电影在线观看| 韩国视频一区二区| 国产精品国产三级国产aⅴ9色| 欧美亚洲天堂网| 亚洲国产一成人久久精品| 亚洲欧美www| 精品人妻一区二区免费视频| 老司机亚洲精品一区二区| 欧美最新大片在线看| 黄色www网站| 欧洲在线视频| 亚洲男同1069视频| 亚洲一区二区三区午夜| 男男激情在线| 99精品视频一区二区三区| 成人免费在线看片| 国产三级精品在线观看| 久久99久久99精品免视看婷婷 | 亚欧成人精品| 午夜精品一区二区三区在线视频| 99久久婷婷国产综合| 国产精品久久久乱弄 | 免费男女羞羞的视频网站在线观看| 国产精品国产三级国产aⅴ无密码| 欧美另类一区| 国产视频二区在线观看| 久久色在线视频| 玛丽玛丽电影原版免费观看1977 | 少妇高潮久久久久久潘金莲| 日韩欧美黄色网址| 欧美xxxx中国| 久久久久北条麻妃免费看| 国产又粗又长又黄的视频| 不卡中文字幕| 久久精品影视伊人网| 搜索黄色一级片| 欧美freesex交免费视频| 美女福利精品视频| 国产精品99re| 欧美亚洲免费| 国产日韩在线视频| 99精品人妻无码专区在线视频区| 国产酒店精品激情| 国产精品麻豆免费版| 色视频在线看| 中文字幕av一区二区三区高| 大桥未久一区二区三区| 丝袜综合欧美| 精品国产乱码久久久久久婷婷| 亚洲午夜无码av毛片久久| 性欧美18一19sex性欧美| 欧美图区在线视频| 激情久久综合网| 国产精品香蕉| 一区二区三欧美| 国产大片免费看| 亚洲精品美女91| 国产精品69久久| 国产欧美一级片| 91麻豆免费看| 中文字幕日韩一区二区三区| 蜜臀av国内免费精品久久久夜夜| 欧美小视频在线观看| 鲁一鲁一鲁一鲁一av| 一本色道69色精品综合久久| 日韩精品视频三区| 色偷偷www8888| 中日韩男男gay无套| 国产成人精品日本亚洲| 精品人妻少妇AV无码专区| 91丨九色丨蝌蚪丨老版| 欧美爱爱视频网站| 性欧美18~19sex高清播放| 欧美撒尿777hd撒尿| 欧产日产国产精品98| 欧美精品尤物在线观看| 色综合久久88色综合天天看泰| 麻豆精品久久久久久久99蜜桃| 狠狠v欧美v日韩v亚洲ⅴ| 九九九九久久久久| 色屁屁www国产馆在线观看| 色噜噜久久综合| 91传媒理伦片在线观看| 色97色成人| 热久久免费国产视频| 国产三级小视频| 国产亚洲一区二区三区| 黄色一级片在线看| 大胆国模一区二区三区| 国产亚洲欧洲在线| 国产午夜性春猛交ⅹxxx| 国产精品1024| 综合国产精品久久久| 欧美日韩电影免费看| 欧美精品一区二区久久久| 5566中文字幕| 青青草91视频| 日韩av一级大片| 欧美办公室脚交xxxx| 精品人在线二区三区| 艳妇荡乳欲伦69影片| 日韩经典中文字幕一区| 久久一区二区三区av| 白浆在线视频| 亚洲第一福利网站| 国产亚洲成人精品| 国产成都精品91一区二区三 | 日韩午夜在线电影| 99精品99久久久久久宅男| 韩国av网站在线| 欧美日韩精品欧美日韩精品一| 丰满圆润老女人hd| 亚洲综合欧美| 欧美男人的天堂| 大胆人体一区| 亚洲欧美中文字幕| 亚洲熟妇无码乱子av电影| 91女神在线视频| 国产91对白刺激露脸在线观看| 麻豆一区二区| 26uuu久久噜噜噜噜| 少妇人妻偷人精品一区二区| 亚洲福利视频一区| 自拍视频一区二区| 久久国产99| 日韩中文一区二区三区| 深夜视频一区二区| 最好看的2019年中文视频| 波多野结衣激情视频| 国产欧美一区二区在线| 91制片厂毛片| 午夜激情久久| 亚洲综合日韩在线| 97人人在线视频| 亚洲免费视频网站| 在线观看国产黄| 最新国产精品久久精品| 久久无码专区国产精品s| 伊人天天综合| 日本日本精品二区免费| 欧美aaaaaaaa| 欧美乱妇40p| 午夜影院免费视频| 在线看不卡av| 翔田千里88av中文字幕| 成人小视频免费在线观看| 少妇高潮毛片色欲ava片| 一本色道久久综合亚洲精品酒店 | 毛片av免费在线观看| 成人久久一区| yellow视频在线观看一区二区| √最新版天堂资源网在线| 国产午夜一区二区| 精品久久在线观看| 欧美日在线观看| 国产黄色片在线| 风间由美一区二区三区在线观看| 人人妻人人添人人爽欧美一区| 激情综合网站| av蓝导航精品导航| 亚洲成人看片| 久热精品视频在线观看| 欧美午夜黄色| 日韩一区二区三区高清免费看看| 可以免费在线观看的av| 综合中文字幕亚洲| 极品粉嫩小仙女高潮喷水久久| 美女网站视频久久| 国产一区二区网| 影音先锋日韩在线| 欧美日韩免费精品| 日韩中文字幕| 国产精品稀缺呦系列在线| 国产乱码在线| 日韩天堂在线视频| www香蕉视频| 欧美视频在线不卡| 99热国产在线观看| 亚洲色图都市小说| 一区二区伦理片| 成人免费不卡视频| 亚洲精品视频三区| 日韩中文字幕区一区有砖一区 | 在线精品亚洲欧美日韩国产| 美女少妇精品视频| 成人高清免费观看mv| 亚洲成**性毛茸茸| 国产欧美第一页| 欧美三级欧美一级| 日韩在线播放中文字幕| 亚洲第一主播视频| 538精品在线观看| 国产精品乱人伦| 少妇无套高潮一二三区| 99久久国产综合精品色伊| 91精品国产高清91久久久久久 | 精品伦一区二区三区| 久久国产夜色精品鲁鲁99| 91激情视频在线| 美女精品在线观看| 中文字幕日本最新乱码视频| 午夜精品999| 四虎免费在线观看视频| 欧美激情偷拍自拍| 三区精品视频观看| 精品中文字幕一区二区三区av| 都市激情久久久久久久久久久| 香蕉久久一区| 国产日韩欧美在线播放| 美女色狠狠久久| 国产精品网站大全| 青青热久免费精品视频在线18| 青青草精品毛片| 一本大道色婷婷在线| 97热精品视频官网| av电影免费在线看| 午夜精品美女自拍福到在线| 国产三线在线| 国产91精品高潮白浆喷水| 538在线视频| 97在线视频免费看| 天天综合av| 国产999视频| 秋霞国产精品| 国产精品入口免费视频一| 九七电影院97理论片久久tvb| 国产第一区电影| 欧美爱爱视频| 91欧美日韩一区| 日本少妇精品亚洲第一区| 国产精品白丝jk白祙| xvideos.蜜桃一区二区| 精品国产一区二区三区久久久久久| 精品淫伦v久久水蜜桃| 九九九热999| 欧美伦理在线视频| 四虎免费在线观看视频| 欧美日韩一区二区三区四区在线观看| 国产黄色激情视频| 亚洲精品资源| 亚洲欧美另类动漫| 国产做a爰片久久毛片| 亚洲天堂小视频| 91色乱码一区二区三区| 无码人妻丰满熟妇啪啪欧美| 国产精品久久久久一区二区三区 | 欧美性猛交xxxx富婆弯腰| 日本中文字幕第一页| 欧美日韩国产色站一区二区三区| 国产精品人人妻人人爽| 欧美精品一区男女天堂| 毛片免费在线| 欧美成人激情在线| 阿v视频在线观看| 国产精品日韩欧美大师| 欧美日韩黄网站| 另类小说综合网| 欧美国产一区二区三区激情无套| 亚洲爆乳无码精品aaa片蜜桃| 亚洲一区亚洲| 不卡中文字幕在线观看| 不卡的看片网站| 国产视频三区四区| 亚洲香肠在线观看| 国内av在线播放| 精品裸体舞一区二区三区| 免费在线超碰| 九九精品视频在线观看| 制服诱惑亚洲| 国产精品我不卡| 久久看人人摘| 99热在线这里只有精品| 激情五月播播久久久精品| 国产精品无码网站| 亚洲男人的天堂网| 国产嫩bbwbbw高潮| 精品精品欲导航| 免费网站免费进入在线| 国产91在线播放精品91| 亚洲高清在线一区| 在线观看日本一区| 久久精品国语| 精品影片一区二区入口| 亚洲视频1区2区| 日本黄色中文字幕| 日韩av在线免费观看一区| 国产原创在线观看| 国产精品电影网| 日韩极品在线| 国产精品www在线观看| 国产资源在线一区| gv天堂gv无码男同在线观看| 欧美日韩午夜激情| 亚洲国产精品久久久久久6q| 久久久精品国产网站| 懂色aⅴ精品一区二区三区| 蜜桃在线一区二区三区精品| 在线欧美福利| 日本人妻一区二区三区| 专区另类欧美日韩| 91麻豆国产在线| 最新国产精品亚洲| xxxxx.日韩| 亚洲激情一区二区| 日产国产高清一区二区三区| 国产肉体xxxx裸体784大胆| 亚洲国产精品一区二区www| 99re只有精品| 美女999久久久精品视频| 国产精品一区免费在线| 中文字幕一区二区三区在线乱码 | 国产精品免费无码| 色成人在线视频| 国产一区电影| 国产成人精品久久久| 精品一区二区三| 波多结衣在线观看| 国产精品久久久久久久久免费丝袜 | 日韩欧美999| 欧美色综合一区二区三区| 热re99久久精品国产66热| 国内黄色精品| 亚洲国产精品三区| 亚洲欧洲成人自拍| 精品人妻久久久久一区二区三区| 欧美日韩国产999| 欧美大胆a级| 黄色三级视频片| 国产精品美女久久久久久| 99久久免费国产精精品| 欧美大片欧美激情性色a∨久久| 国产66精品| 凹凸国产熟女精品视频| 国产欧美一区二区三区沐欲| 曰批又黄又爽免费视频| 精品国内亚洲在观看18黄| 亚洲伊人影院| 成年人免费在线播放| 欧美国产一区在线| 国产精品视频一二区| 欧美激情区在线播放| 亚洲va久久| 国产免费又粗又猛又爽| 亚洲卡通动漫在线| 神马午夜精品95| 国产精品国产自产拍高清av水多| 91精品国偷自产在线电影 | 国产精品三级电影| av在线资源观看| 51ⅴ精品国产91久久久久久| 成人影视亚洲图片在线| 在线观看欧美一区二区| 天天操天天色综合| 最新电影电视剧在线观看免费观看| 亚洲mm色国产网站| 国产欧美另类| 三级黄色录像视频| 亚洲国产高清高潮精品美女| 日韩欧美一区二区三区在线观看| 加勒比海盗1在线观看免费国语版| 99久久精品国产导航| 国产又粗又猛又爽又黄视频| 91精品国产高清自在线| 四虎国产精品免费观看| 亚洲制服丝袜在线播放| 精品1区2区3区| 成年男女免费视频网站不卡| 色视频一区二区三区| 成人性生交大片免费看视频在线| 中文字幕久久熟女蜜桃| 久久男人资源视频| 天天综合一区| 美女爆乳18禁www久久久久久 | 青青草免费在线|