成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

鴻蒙HarmonyOS官方模板學習 之 Full Screen Ability(Java)

開發 后端 OpenHarmony
使用Java語言開發,用于Phone設備的FeatureAbility模板,使用XML布局。為開發者提供全屏頁的示例工程,使用了Image組件,并實現了橫豎屏切換,并保持全屏顯示。

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

Full Screen Ability(Java)

介紹

使用Java語言開發,用于Phone設備的FeatureAbility模板,使用XML布局。為開發者提供全屏頁的示例工程,使用了Image組件,并實現了橫豎屏切換,并保持全屏顯示。

搭建環境

安裝DevEco Studio,詳情請參考DevEco Studio下載。

設置DevEco Studio開發環境,DevEco Studio開發環境需要依賴于網絡環境,需要連接上網絡才能確保工具的正常使用,可以根據如下兩種情況來配置開發環境:

如果可以直接訪問Internet,只需進行下載HarmonyOS SDK操作。

如果網絡不能直接訪問Internet,需要通過代理服務器才可以訪問,請參考配置開發環境。

卡片布局

實現該效果其實有2個布局文件,land_main.xml #橫屏布局文件,port_main.xml #豎屏布局文件

布局文件對比,有2處不同,

1.最外層的DirectionalLayout布局的orientation,橫屏值設置為horizonal,豎屏值設置為vertical

2.橫屏布局是bottom_margin/top_margin 設置為0,豎屏布局是left_margin/right_margin 設置為0

橫屏布局文件豎屏布局文件

HarmonyOS官方模板學習 之 Full Screen Ability(Java)-鴻蒙HarmonyOS技術社區
HarmonyOS官方模板學習 之 Full Screen Ability(Java)-鴻蒙HarmonyOS技術社區

后臺邏輯

1.啟動時,添加窗口標志。 您可以從 WindowManager.LayoutConfig 獲取當前支持的標志。

然后根據手機方向的不同來加載不同的布局文件。

  1. @Override 
  2.     public void onStart(Intent intent) { 
  3.         super.onStart(intent); 
  4.  
  5.         // hide status bar 
  6.         HiLog.debug(LABEL, "添加窗口標志,全屏模式,隱藏狀態欄和面板可以擴展到屏幕之外。"); 
  7.         this.getWindow().addFlags(WindowManager.LayoutConfig.MARK_ALLOW_EXTEND_LAYOUT); 
  8.         this.getWindow().addFlags(WindowManager.LayoutConfig.MARK_FULL_SCREEN); 
  9.  
  10.         // adapt orientation 
  11.         //0:PORTRAIT,1:LANDSCAPE 
  12.         int orientation = getResourceManager().getConfiguration().direction; 
  13.         HiLog.debug(LABEL, "從資源管理配置中獲取方向:%{public}s ,加載布局文件", orientation==0?"PORTRAIT":"LANDSCAPE"); 
  14.         if (orientation == Configuration.DIRECTION_HORIZONTAL) { 
  15.             super.setUIContent(ResourceTable.Layout_land_main); 
  16.         } else { 
  17.             super.setUIContent(ResourceTable.Layout_port_main); 
  18.         } 
  19.     } 

2.當屏幕的顯示方向改變時重新加載布局文件,此處和啟動時判定方式不同,

利用AbilityInfo.DisplayOrientation和 AbilityInfo.DisplayOrientation.LANDSCAPE 進行判定。

  1. @Override 
  2.     protected void onOrientationChanged(AbilityInfo.DisplayOrientation displayOrientation) { 
  3.         super.onOrientationChanged(displayOrientation); 
  4.  
  5.         if (displayOrientation == AbilityInfo.DisplayOrientation.LANDSCAPE) { 
  6.             HiLog.debug(LABEL, "手機方向發生改變,變為:%{public}s ,重新加載布局文件""LANDSCAPE"); 
  7.  
  8.             setUIContent(ResourceTable.Layout_land_main); 
  9.         } else { 
  10.             HiLog.debug(LABEL, "手機方向發生改變,變為:%{public}s ,重新加載布局文件""PORTRAIT"); 
  11.  
  12.             setUIContent(ResourceTable.Layout_port_main); 
  13.         } 
  14.     } 

java版本的邏輯比較簡單,看了一下js版本的案例,支持更多的設備類型,處理邏輯也不一樣,tv和wearable沒有橫豎屏之分,尺寸差異也比較大,用了2張不同尺寸的圖片,核心關鍵是利用css通過dispaly來控制顯示和隱藏,適配不同的設備。

效果展示

[[407818]]

文章相關附件可以點擊下面的原文鏈接前往下載

原文鏈接:https://harmonyos.51cto.com/posts/4776

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2021-07-01 09:19:56

鴻蒙HarmonyOS應用

2021-06-18 14:55:57

鴻蒙HarmonyOS應用

2021-05-28 17:01:49

鴻蒙HarmonyOS應用

2021-08-30 18:34:35

鴻蒙HarmonyOS應用

2020-12-30 11:08:50

鴻蒙HarmonyOShelloWorld

2020-11-17 11:48:44

HarmonyOS

2020-11-25 12:02:02

TableLayout

2021-01-06 10:59:14

鴻蒙HarmonyOSPage Abilit

2021-01-04 11:44:05

鴻蒙HarmonyOSAbilitySlic

2020-12-28 11:19:06

鴻蒙HarmonyOSPage Abilit

2021-01-12 09:42:05

鴻蒙HarmonyOSPage Abilit

2021-10-18 10:14:26

鴻蒙HarmonyOS應用

2020-11-05 11:47:52

HarmonyOS

2022-02-17 21:05:26

AbilityJS FAJava PA

2020-12-22 11:09:20

鴻蒙Feature AbiAbilitySlic

2021-05-27 14:57:12

HarmonyOS 鴻蒙時代

2023-03-08 08:33:44

Javajavac命令

2021-03-05 15:55:10

鴻蒙HarmonyOS應用開發

2021-09-18 14:40:37

鴻蒙HarmonyOS應用

2021-06-25 15:04:31

鴻蒙HarmonyOS應用
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧洲精品视频一区 | 欧美精品网 | 亚洲一区二区三区四区五区中文 | 日韩精品在线观看视频 | 天天干天天干 | 91精品久久 | 一区二区免费 | 欧美 日韩 中文 | 成人在线视频观看 | 亚洲欧美综合精品另类天天更新 | 国产精品一区久久久 | 亚洲永久 | 一级片在线播放 | 国产成人精品a视频一区www | 久色视频在线 | 国产97色 | 精品国产一区二区三区性色av | 中文字幕高清一区 | 欧美大片一区二区 | 日韩欧美在线视频 | 欧美精品在线看 | 久久精品这里精品 | 午夜资源 | 亚洲高清视频在线观看 | 国产激情视频 | 久久噜| 欧美在线一区二区三区 | 国产精品成人一区二区三区吃奶 | 国产激情亚洲 | 91久久看片 | 日韩资源 | 亚洲精品久久久久久久久久久久久 | 亚洲欧美综合精品久久成人 | 日韩欧美国产精品一区 | 欧美日日 | 亚洲精品视频免费 | 久久网亚洲 | 五月天婷婷激情 | 精品福利在线视频 | 精品九九在线 | 久久久精品视频免费看 |