色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

鴻蒙OS開發:【一次開發,多端部署】(多設備自適應能力)實例

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-05-20 18:27 ? 次閱讀

多設備自適應能力

介紹

此Demo展示在JS中的多設備自適應能力,包括資源限定詞、原子布局和響應式布局。

效果預覽

image.png

使用說明

1.本示例中的資源限定詞和響應式布局針對常見設備類型做了適配,可以在預覽器中開啟"Multi-profile preview"進行多設備預覽。

2.本示例中的原子布局提供了滑動條(slider),通過拖動滑動條更改父容器尺寸可以更直觀的查看原子布局的效果。為了突出重點以及易于理解,此部分的代碼做了一定精簡,建議通過IDE預置的MatePadPro預覽器查看此部分效果。

3.啟動應用,首頁展示了 資源限定詞原子布局響應式布局三個按鈕。

4.點擊資源限定詞進入新界面,展示字符串和圖片資源的使用。

5.點擊原子布局進入新界面,分別展示原子布局的拉伸能力、縮放能力、隱藏能力、折行能力、均分能力、占比能力、延伸能力。

6.點擊響應式布局進入新界面,展示媒體查詢、柵格布局、典型場景三類響應式布局能力。

開發前請熟悉鴻蒙開發指導文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

相關概念

資源限定與訪問:資源限定詞可以由一個或多個表征應用場景或設備特征的限定詞組合而成,包括屏幕密度等維度,限定詞之間通過中劃線(-)連接,開發者resources目錄下創建限定詞文件。
原子布局:在屏幕形態和規格不同等情況下,布局效果需要實現自適應,因此系統提供了面向不同屏幕尺寸界面自適應適配的布局能力,稱為原子布局。
響應式布局:通過使用響應式布局能力開發新應用或者改造已有應用,可以使應用在手機、平板、智慧屏等各種尺寸的設備都有良好的展示效果。

工程目錄

code/SuperFeature/MultiDeviceAppDev/JsAdaptiveCapabilities
└─src
    └─main
        ├─js
        │  └─MainAbility
        │      ├─common                            //公共資源包
        │      ├─i18n                              //國際化語言包
        │      ├─pages
        │      │  ├─atomicLayoutCapability         //原子布局
        │      │  │  ├─equipartitionCapability     //均分能力
        │      │  │  ├─extensionCapability
        │      │  │  │  ├─extensionCapability1     //延伸能力1
        │      │  │  │  └─extensionCapability2     //延伸能力2
        │      │  │  ├─flexibleCapability         
        │      │  │  │  ├─flexibleCapability1      //拉伸能力1
        │      │  │  │  └─flexibleCapability2      //拉伸能力2
        │      │  │  ├─hiddenCapability            //隱藏能力
        │      │  │  ├─index                       //原子布局首頁
        │      │  │  ├─proportionCapability        //均分能力
        │      │  │  ├─scaleCapability             //均分能力
        │      │  │  └─wrapCapability              //折行能力
        │      │  ├─index                          //主頁
        │      │  └─resourceQualifier              //資源限定注入
        │      │      └─responsiveLayout           //響應式布局
        │      │          ├─gridContainer          //網格容器
        │      │          ├─index                  //響應布局首頁
        │      │          ├─mediaQuery             //媒體查詢
        │      │          └─typicalScene           //典型布局
        │      └─resources                         //限定詞資源
        └─resources                                //公共資源     
        

`HarmonyOSOpenHarmony鴻蒙文檔籽料:mau123789v直接拿`

搜狗高速瀏覽器截圖20240326151450.png

具體實現

1、index下定義三個box,分別資源限定詞resourceQualifier、原子布局atomicLayoutCapability、響應式布局responsiveLayout,并通過onclick路由到各自的組件。
2、資源限定詞組件: 在MainAbility.resource下定義需要訪問的資源,在資源限定詞resourceQualifier組件中,使用$r('')即可實現不同形態和規格訪問到不同的資源。
3、原子布局atomicLayoutCapability組件:該布局下,通過slide滑動控制樣式的展示比率rate,例如下面這個樣例,[源碼參考]。

< !--

 Copyright (c) 2022 Huawei Device Co., Ltd.

 Licensed under the Apache License, Version 2.0 (the "License");

 you may not use this file except in compliance with the License.

 You may obtain a copy of the License at



     http://www.apache.org/licenses/LICENSE-2.0



 Unless required by applicable law or agreed to in writing, software

 distributed under the License is distributed on an "AS IS" BASIS,

 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

 See the License for the specific language governing permissions and

 limitations under the License.

 -- >



< element name="NavigationBar" src="http://www.1cnz.cn/images/chaijie_default.png" >< /element >

< div class="container" >

  < Navigationbar title="{{ title }}" >< /Navigationbar >

  < div class="box" style="width : {{ rate }};" >

    < div class="box-mid" style="width : {{ rate }};" >

      < div for="list" class="box-small" >

        < image src="http://www.1cnz.cn/images/chaijie_default.png" >< /image >

        < text >App name< /text >

      < /div >

    < /div >

  < /div >

  < slider class="slider" min="40" max="75" value="{{ value }}" onchange="setValue" >< /slider >

< /div >

4、響應式布局responsiveLayout :該布局下需要相對應的媒體資源,比如sm、md、lg,然后監聽媒體的變化,從而對資源進行響應式的調整。 例如柵格布局,[源碼參考]

< !--

 Copyright (c) 2022 Huawei Device Co., Ltd.

 Licensed under the Apache License, Version 2.0 (the "License");

 you may not use this file except in compliance with the License.

 You may obtain a copy of the License at



     http://www.apache.org/licenses/LICENSE-2.0



 Unless required by applicable law or agreed to in writing, software

 distributed under the License is distributed on an "AS IS" BASIS,

 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

 See the License for the specific language governing permissions and

 limitations under the License.

 -- >



< element name="NavigationBar" src="http://www.1cnz.cn/images/chaijie_default.png" >< /element >

< div class="container" >

  < Navigationbar title="{{ title }}" >< /Navigationbar >

  < grid-container style="background-color : #F1F3F5; margin-top : 10vp;" >

    < grid-row style="height : 200px; justify-content : space-around; width : 100%;" >

      < grid-col xs="1" sm="1" md="1" lg="2" style="background-color : #66BBB2CB;" >

        < div style="align-items : center; height : 100%;" >

          < text >{{ $t("strings.left") }}< /text >

        < /div >

      < /grid-col >

      < grid-col xs="1" sm="2" md="5" lg="7" style="background-color : #66B6C5D1;" >

        < div style="align-items : center; height : 100%;" >

          < text >{{ $t("strings.center") }}< /text >

        < /div >

      < /grid-col >

      < grid-col xs="1" sm="1" md="2" lg="3" style="background-color : #66BBB2CB;" >

        < div style="align-items : center; height : 100%;" >

          < text >{{ $t("strings.right") }}< /text >

        < /div >

      < /grid-col >

    < /grid-row >

  < /grid-container >

< /div >

本案例定義了xs、sm、md、lg下的柵格寬度,根據系統的規格自動選擇相應的屬性。
5、使用mediaQuery對規格進行監聽,判斷當前系統的橫豎屏,從而加載相應的資源,[源碼參考]。

< !--

 Copyright (c) 2022 Huawei Device Co., Ltd.

 Licensed under the Apache License, Version 2.0 (the "License");

 you may not use this file except in compliance with the License.

 You may obtain a copy of the License at



     http://www.apache.org/licenses/LICENSE-2.0



 Unless required by applicable law or agreed to in writing, software

 distributed under the License is distributed on an "AS IS" BASIS,

 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

 See the License for the specific language governing permissions and

 limitations under the License.

 -- >



< element name="NavigationBar" src="http://www.1cnz.cn/images/chaijie_default.png" >< /element >

< div class="container-big" >

  < Navigationbar title="{{ title }}" >< /Navigationbar >

  < div class="container1" >

    < image if="{{ isLandscape }}" style="height : 100vp; width : 100vp" src="common/image/tablet.png" >< /image >

    < image else style="height : 100vp; width : 100vp" src="common/image/phone.png" >< /image >

    < text class="text" style="font-size : 24vp;" >{{ text }}< /text >

  < /div >

< /div >

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 鴻蒙
    +關注

    關注

    57

    文章

    2342

    瀏覽量

    42821
  • 鴻蒙OS
    +關注

    關注

    0

    文章

    188

    瀏覽量

    4383
收藏 人收藏

    評論

    相關推薦

    鴻蒙OS實戰開發:【設備自適應服務卡片】

    服務卡片的布局和使用,其中卡片內容顯示使用了一次開發多端部署能力實現
    的頭像 發表于 04-09 09:20 ?857次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b>實戰<b class='flag-5'>開發</b>:【<b class='flag-5'>多</b><b class='flag-5'>設備</b><b class='flag-5'>自適應</b>服務卡片】

    HarmonyOS開發案例:【一次開發多端部署(視頻應用)】

    者提供了“一次開發多端部署”的系統能力,讓開發者可以基于
    的頭像 發表于 05-11 15:41 ?1442次閱讀
    HarmonyOS<b class='flag-5'>開發</b>案例:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>(視頻應用)】

    HarmonyOS開發案例:【一次開發多端部署-音樂專輯】

    基于自適應和響應式布局,實現一次開發多端部署音樂專輯頁面。
    的頭像 發表于 05-13 16:48 ?679次閱讀
    HarmonyOS<b class='flag-5'>開發</b>案例:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>-音樂專輯】

    鴻蒙OS開發:【一次開發多端部署】應用(自適應布局)

    針對常見的開發場景,方舟開發框架提煉了七種自適應布局能力,這些布局可以獨立使用,也可多種布局疊加使用。
    的頭像 發表于 05-24 10:34 ?1018次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】應用(<b class='flag-5'>自適應</b>布局)

    鴻蒙OS開發:【一次開發多端部署】(多天氣)項目

    本示例展示個天氣應用界面,包括首頁、城市管理、添加城市、更新時間彈窗,體現一次開發多端部署能力
    的頭像 發表于 05-20 14:59 ?838次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(<b class='flag-5'>一</b>多天氣)項目

    鴻蒙OS開發:【一次開發多端部署】(音樂專輯主頁)

    本示例使用一次開發多端部署中介紹的自適應布局能力和響應式布局
    的頭像 發表于 05-21 14:48 ?733次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(音樂專輯主頁)

    鴻蒙OS開發:【一次開發多端部署】(音樂專輯頁面)

    基于自適應和響應式布局,實現一次開發多端部署音樂專輯頁面。
    的頭像 發表于 05-25 16:21 ?790次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(音樂專輯頁面)

    鴻蒙OS開發:【一次開發多端部署】(視頻應用)

    者提供了“一次開發多端部署”的系統能力,讓開發者可以基于
    的頭像 發表于 05-25 16:29 ?4535次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(視頻應用)

    鴻蒙OS開發:【一次開發多端部署】(自適應布局)

    針對常見的開發場景,方舟開發框架提煉了七種自適應布局能力,這些布局可以獨立使用,也可多種布局疊加使用。
    的頭像 發表于 05-25 16:36 ?1692次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(<b class='flag-5'>自適應</b>布局)

    鴻蒙OS開發:典型頁面場景【一次開發多端部署】實戰(音樂專輯頁2)

    本示例使用[一次開發多端部署]中介紹的自適應布局能力和響應式布局
    的頭像 發表于 05-25 16:47 ?2094次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發</b>:典型頁面場景【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】實戰(音樂專輯頁2)

    鴻蒙OS開發:典型頁面場景【一次開發多端部署】實戰(設置典型頁面)

    本示例展示了設置應用的典型頁面,其在小窗口和大窗口有不同的顯示效果,體現一次開發多端部署能力
    的頭像 發表于 05-27 09:36 ?1141次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發</b>:典型頁面場景【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】實戰(設置典型頁面)

    HarmonyOS\"一次開發多端部署\"優秀實踐——玩機技巧,碼上起航

    工程一次開發上架,即可多端按需部署。公共能力層支持網絡框架、工具類、數據管理等能力。特性層抽象出
    發表于 08-30 18:14

    華為開發者大會2021:一次開發 多端部署

    一次開發 多端部署使能開發者從單設備生態跨入
    的頭像 發表于 10-22 15:09 ?1641次閱讀
    華為<b class='flag-5'>開發</b>者大會2021:<b class='flag-5'>一次</b><b class='flag-5'>開發</b> <b class='flag-5'>多端</b><b class='flag-5'>部署</b>

    鴻蒙OS開發:【一次開發多端部署】(設備自適應能力)簡單介紹

    本示例是《一次開發多端部署》的配套示例代碼,展示了[頁面開發一多能力],包括
    的頭像 發表于 05-21 14:59 ?2401次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(<b class='flag-5'>多</b><b class='flag-5'>設備</b><b class='flag-5'>自適應能力</b>)簡單介紹

    鴻蒙OS開發:【一次開發多端部署】( 設置app頁面)

    本示例展示了設置應用的典型頁面,其在小窗口和大窗口有不同的顯示效果,體現一次開發多端部署能力
    的頭像 發表于 05-21 14:56 ?1047次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>OS</b><b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】( 設置app頁面)
    主站蜘蛛池模板: 亚洲 欧美 清纯 校园 另类| 国产精品AV视频一二三区| 啦啦啦 中国 日本 高清 在线| 亚洲AV无码久久流水呻蜜桃久色 | 色综合五月激情综合色一区| 91嫩草私人成人亚洲影院| 久久国内精品视频| 亚洲视频免费在线观看| 国产亚洲精品久久久久久久 | 国产国拍精品AV在线观看| 日本无码色哟哟婷婷最新网站 | 奇米狠狠干| china18一19 第一次| 男人一进一出桶女人视频| 最新精品国产| 久久夜色精品国产亚州AV卜| 夜色爽爽爽久久精品日韩| 鸡鸡插屁股| 亚洲一区精品伊人久久伊人| 花蝴蝶高清影视视频在线播放| 亚洲 天堂 欧美 日韩 国产| 国产麻豆精品传媒AV国产在线| 午夜十八岁禁| 国产亚洲人成网站在线观看播放 | 97视频在线观看免费视频| 美丽的姑娘BD在线观看| 777米奇色狠狠俺去啦| 蜜桃久久久亚洲精品成人| 97人妻AV天天澡夜夜爽| 免费麻豆国产黄网站在线观看| 91麻豆久久| 秋霞电影院午夜伦高清| 抽插妇女疯狂视频| 天美传媒果冻传媒入口视频| 国产精品麻豆AV| 亚洲国产在线99视频| 狠狠色狠狠色综合日日32| 亚洲综合免费视频| 老色哥网站| china男士同性视频tv| 肉动漫无码无删减在线观看|