女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

一文詳細了解ArkUI框架新增能力

科技觀點 ? 來源:科技觀點 ? 作者:科技觀點 ? 2022-04-27 13:44 ? 次閱讀

ArkUI是一套UI開發框架,它提供了開發者進行應用UI開發時所必須的能力。隨著OpenHarmony v3.1 Release(后文簡稱v3.1)版本的發布,ArkUI框架也增加了許多新能力,接下來跟隨小編一起看看都有哪些新增能力吧。

1 ArkUI框架新增能力概覽

本次版本更新主要提升了ArkUI框架開發大型應用的能力。如圖1所示,藍色模塊是本次新版本ArkUI框架的新增/增強能力,它包括:Canvas、OffscreenCanvas、XComponent組件、Web組件、鍵盤與鼠標以及eTS編譯打包與實時預覽能力。

poYBAGJo2CqAAndTAAA-KdUxgAs032.png

圖1 ArkUI框架新增能力概覽圖

每一次能力的新增,都是為了讓開發者能夠更加高效、便捷地開發,下面一起了解一下這些新能力都將帶來哪些便捷。

為了便于大家理解,小編將本次新增的能力分成了以下三類:新增聲明式Canvas繪制能力、新增混合開發能力和增強UI開發能力。

1.1 新增聲明式Canvas繪制能力

新增聲明式Canvas繪制能力中包含Canvas組件和OffscreenCanvas組件。

Canvas組件:為了方便開發者通過繪制方式實現自定義UI效果,v3.1版本新增了Canvas繪制能力。

OffscreenCanvas組件:為了滿足開發者離屏繪制開發場景,v3.1版本新增了離屏繪制能力。

有了Canvas繪制能力后,v3.1版本便基于Canvas移植了Lottie的動畫庫供開發者使用,后文將詳細介紹。

1.2 新增混合開發能力

新增混合開發能力中包含了XComponent組件和Web組件。

XComponent組件:為了便于開發者在OpenHarmony系統上構建C++/TS應用,以滿足類似游戲、地圖等應用開發場景,v3.1版本提供了XComponent組件及其配套的NDK(native development kit,原生開發包)。

Web組件:為了滿足開發者在應用內加載和訪問HTML5網頁的需求,v3.1版本重點構建了Web組件,并提供了豐富的API可支撐HTML5頁面與TS頁面進行數據交互

1.3 增強UI開發能力

增強UI開發能力中包含了鍵盤與鼠標的組件統一交互能力增強和開發工具鏈的eTS編譯打包與實時預覽能力增強。

鍵盤與鼠標:新版本中還重點提升了統一交互的操作體驗,開發者無需進行復雜適配,即可支持用戶使用鍵盤、鼠標進行UI交互

eTS編譯打包與實時預覽為了滿足了多種狀態樣式統一設置的訴求,v3.1版本提供了@Style裝飾器,優化了工具鏈的編譯性能與預覽性能,實現了支持多種文件大型應用編譯。

看完這些新增能力,你也許會很好奇,它們是如何使用的呢?接下來請跟隨小編的步伐,一起了解一下這些新增能力的使用方法吧。

2 新增聲明式Canvas繪制能力

2.0.1 聲明式Canvas介紹

首先介紹一下聲明式Canvas給大家提供的繪制能力。為了更好地利用現有Web Canvas生態,v3.1版本提供了標準的W3C Canvas繪制接口(如圖2所示),豐富的繪制方法可以讓開發者高效繪制出矩形、文本、圖像等。

注:因OffscreenCanvas與Canvas繪制接口相同,都遵循w3c標準,故此處不再贅述

pYYBAGJo2CuAGJoYAAG5_Py22Rs305.png

圖2 W3C Canvas繪制接口

2.0.2 使用方法

下面介紹一個示例,給大家展示聲明式開發范式中Canvas組件的基礎使用方法。

圖3是三張圖片疊加的效果,頂層的圖片覆蓋了底層的圖片。通過依次使用drawImage(x,y, width, height)方法設置圖片坐標及尺寸,后面繪制的圖片自動覆蓋原來的圖像,從而達到圖片疊加顯示的效果。

poYBAGJo2CuAKiISAAD7VL0FjcM952.png

圖3 圖片疊加

如下代碼所示,首先在Column()組件中創建了一塊畫布,并結合內置組件與屬性方法對畫布進行聲明式描述。

然后通過RenderingContext()獲取命令式的繪圖對象,將聲明式UI界面與命令式繪制良好地關聯起來。

最后通過onReady回調方法直接使用命令式語法,使用繪制對象在畫布中進行繪制。

pYYBAGJo2CuAX0G4AACO7pszn04129.png

2.1 基于聲明式Canvas的Lottie動畫支持

2.1.1 介紹

Lottie是業界常用的動畫格式,它支持通過Canvas渲染,OpenHarmony團隊為大家改造了lottie庫,命名為lottie-ohos-ets,開發者可以直接引用該庫,綁定Canvas組件后即可顯示動畫。

2.1.2 使用方法

Lottie動畫的使用主要分為以下四個步驟:

步驟一:準備Lottie文件,作為資源添加(可以使用AE工具制作并導出JSON文件)

poYBAGJo2CyAEo3xAAAnt3BFMEY604.png

步驟二:引入Lottie-ohos-ets支持庫

import lottie from ‘lottie-ohos-ets’

步驟三:將lottie動畫與Canvas綁定

pYYBAGJo2CyAATshAACFgNmX7vk498.png

步驟四:顯示動畫

poYBAGJo2CyAYrnCAAAhFooSG5o511.png

3 新增混合開發能力

3.1 基于XComponent的C++/TS混合開發能力

3.1.1 介紹

在應用開發過程中,很多場景是無法直接采用UI組合實現的,例如游戲、地圖這種應用需要依賴C++、 SDK進行獨立渲染,又如相機、視頻播放器這種應用是需要使用相機進行預覽顯示的,因此就需要框架能提供一種可以在C++側進行繪制的組件,于是v3.1版本就推出了XComponent組件,它可以支持C++/TS混合開發。

如圖4所示,系統分為應用層、框架層和系統服務層,藍色模塊是新增能力。v3.1版本在框架層部分提供了聲明式的XComponent組件,以便開發者在應用頁面中進行使用。

pYYBAGJo2CyAH65kAAAe3G5PAZU222.png

圖4 XComponent的C++/TS混合開發

3.1.2 使用方法

在應用層中,開發者可以使用系統NDK提供的標準庫進行應用動態庫的開發,標準庫中為應用繪制提供了標準的EGL/OpenGLES接口,可以支持三方SDK直接引入使用,再結合框架層的XComponent提供的接口即可對C++進行渲染。

基于XComponent組件的C++/TS混合開發主要分為以下幾個步驟:

步驟一:首先是開發C++動態庫。基于NDK編譯工具,將開發者編寫的CPP文件編譯成.so文件。

開發者僅需要引入頭文件,并覆蓋OnSurfaceCreate方法進行繪制即可使用NDK提供的OpenGLES接口,實現繪制效果。代碼如下:

poYBAGJo2C2AIgDkAAD2254DnWo299.png

步驟二:然后通過XComponent組件加載動態庫。調用TS接口,通過TS控制C++邏輯,傳入數據與事件,即可對C++邏輯進行渲染。

XComponent組件的使用也極其簡單,設置參數對應動態庫名稱即可實現加載。代碼如下:

pYYBAGJo2C2AIIp_AAAkXvA1LqU199.png

3.2 基于Web組件的HTML5/TS混合開發能力

3.2.1 介紹

有些應用開發場景是在應用中嵌入網頁,網頁可能是本地頁面,也可能是網絡頁面,且需要在HTML5頁面中與原生組件之間進行數據傳遞。針對以上開發場景,v3.1版本提供了基于Web組件的HTML5/TS混合開發能力。

3.2.2 使用方法

Web組件的使用方法主要分為以下幾個步驟:

步驟一:首先提前準備好HTML5頁面文件或者網絡地址

步驟二:然后用Web組件加載HTML5頁面

步驟三:最后就可以顯示出頁面內容

下面通過一個例子,來為大家展示Web組件加載頁面的使用步驟。如圖5所示,這是一個常見的Web組件使用場景,首先是準備好網絡地址http://openharmony.cn并將Web組件與其他組件在同一頁面中共同縱向布局排列,然后用Web組件通過src指定首頁鏈接并加載頁面,最后頁面就構建完成了。

poYBAGJo2C6AAgQpAAAm4TUzInI699.pngpYYBAGJo2C6Aed67AABsXGOTDGo521.png

圖5 Web組件的HTML5/TS混合開發

Web組件還提供了將HTML5頁面與原生TS頁面進行交互的能力,它可以支持在原生組件頁面中執行HTML5頁面中定義的JavaScript方法,也可以支持在HTML5頁面中使用原生頁面中注入的JavaScript對象。由于篇幅有限,此處不再針對上述能力展開介紹,開發者可以自行訪問社區開發文檔,基于runJavaScript 方法 和 registerJavaScriptProxy 方法的示例,構建出能力更強的Web應用。

社區開發文檔

https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-web.md

4 增強UI開發能力

4.1 鍵盤與鼠標的組件統一交互能力增強

在v3.1版本中,ArkUI框架增強了統一交互能力,它讓應用開發更加化繁為簡。如圖6所示,v3.1版本將鼠標、鍵盤在組件層面進行了統一,通過相同事件回調屏蔽了輸入設備類型的差異,因此開發者無需關心具體的輸入設備類型。

poYBAGJo2C6AJEWFAABF8IZ4asM094.png

圖6 組件統一交互

4.2 開發工具鏈的eTS編譯打包與實時預覽

開發工具鏈DevEco Studio也跟隨v3.1版本的更新做了能力的增強,能力增強后的工具實現了支持多種文件大型應用編譯、擁有亞秒級的實時預覽效果、組件雙向預覽能力、可以實時查看組件的屬性,且實時查看的效果已與業界持平。歡迎開發者更新最新的DevEco Studio進行使用體驗。

DevEco Studio下載地址:

https://developer.harmonyos.com/cn/develop/deveco-studio#download_beta_openharmony

最后介紹一下v3.1版本為大家提供的新裝飾器@Style。該裝飾器可以將樣式統一設置,樣式復用,同時v3.1版本針對多態效果,提供了一次性設置接口,該能力能夠最大化復用樣式設置。如圖7所示,左邊通過@Style分別定義三種樣式集合,之后通過右邊stateStyles屬性方法,同時設置給UI組件,即可實現圖8中三種效果,分別為正常狀態效果、按壓狀態效果和禁用狀態效果。

pYYBAGJo2C6ANSXCAAAckOoqYFc263.png

圖7 樣式集合

poYBAGJo2C6AXBvEAAAyyn9jU_s548.png

圖8 效果圖

5 結語

以上就是本期ArkUI框架新能力的全部介紹啦,歡迎大家踴躍嘗鮮。同時ArkUI框架未來會進一步提升動態布局能力和推出跨OS平臺部署等相關能力,各位開發者敬請期待!

審核編輯:湯梓紅

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

    關注

    0

    文章

    20

    瀏覽量

    11177
  • OpenHarmony
    +關注

    關注

    26

    文章

    3824

    瀏覽量

    18134
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    溫濕度變送器功能有哪些?詳細解析

    對于很多行業來說,精確的測量以及控制溫度和濕度至關重要。想要達到這個目的,往往需要用到溫濕度變送器。那么,溫濕度變送器究竟有哪些功能呢?下面為大家詳細介紹。 、精確測量溫濕度 溫濕度變送器的核心
    發表于 06-03 10:56

    ArkUI-X添加到現有Android項目中

    ,構建Android aar包。 ace build aar DevEco Studio 1.創建ArkUI-X Library工程 2.通過執行Build APP(s)選項,構建出Android
    發表于 05-28 22:44

    ArkUI-X跨平臺框架接入指南

    ArkUI跨平臺框架(ArkUI-X)進步將ArkUI開發框架擴展到了多個OS平臺:目前支持O
    發表于 05-18 18:21

    如何成為名合格的KaihongOS北向應用開發工程師

    如何使用 KaihongOS 的 SDK 和工具鏈進行開發和調試 。 2. 特定技術棧 KaihongOS 框架:深入了解 KaihongOS 操作系統的架構和開發框架ArkUI
    發表于 04-23 06:46

    PDM產品數據管理是什么?詳細了解三品PDM系統

    在當今競爭激烈的商業環境中,企業為了提升自身的競爭力,不斷尋求各種方法來優化產品開發流程、提高生產效率以及降低成本。PDM(產品數據管理)系統作為種強大的工具,正在逐漸成為企業實現這些目標的關鍵。
    的頭像 發表于 03-25 14:01 ?301次閱讀

    微服務器架構幾種典型的基礎框架,你了解嗎?

    ;Akka用Scala寫,處理能力強。還有如.NETCore、ServiceFabric等其他框架,它們各自在協議、語言支持、功能特點等方面有所不同,開發者可按需選擇構建微服務。
    的頭像 發表于 03-04 11:05 ?328次閱讀

    華為推出RN/H5多設備自適應組件庫

    在原生鴻蒙應用開發中,華為針對ArkUI框架推出了整套針對多設備適配的完善能力(如“多”能力
    的頭像 發表于 01-16 14:46 ?601次閱讀

    如何成為名合格的北向應用開發工程師

    鏈進行開發和調試 。 2. 特定技術棧 KaihongOS 框架 :深入了解 KaihongOS 操作系統的架構和開發框架ArkUI :學習 KaihongOS 的 UI 開發
    發表于 01-10 10:00

    HarmonyOS開發指導類文檔更新速遞(上)

    、媒體相關能力新增、優化文檔,方便開發者更加高效使用文檔。 ArkUI(方舟UI框架ArkUI(方舟UI
    的頭像 發表于 12-30 09:50 ?814次閱讀
    HarmonyOS開發指導類文檔更新速遞(上)

    詳細了解驍龍8至尊版強大的AI能力

    強大的AI性能加持下,可支持個性化的多模態AI助手,并為終端設備帶來全面煥新的AI影像和豐富有趣的AI游戲體驗。下面,就讓我們詳細了解驍龍8至尊版強大的AI能力。 全面升級的AI性能 早在第三代驍龍8移動平臺上,高通已將高性
    的頭像 發表于 12-24 11:47 ?1442次閱讀
    <b class='flag-5'>詳細了解</b>驍龍8至尊版強大的AI<b class='flag-5'>能力</b>

    開源鴻蒙5.0 Release版本關鍵特性解讀

    特性。如果想了解該版本完整的特性,請參考版本的Release notes。 系統功能 1.1 應用框架能力優化 應用框架
    的頭像 發表于 12-23 13:58 ?1744次閱讀

    高校暑期實踐活動圓滿結束

    產線車間,詳細了解智能屏從設計到生產全流程,了解自主設計研發的人機交互專用ASIC在工業自動化、醫療器械、美容保健、智慧家居及家電、新能源等行業領域的應用案例
    的頭像 發表于 09-03 08:02 ?555次閱讀
    迪<b class='flag-5'>文</b>高校暑期實踐活動圓滿結束

    學習鴻蒙必須要知道的幾個名詞

    HarmonyOS提供了套UI(UserInterface,用戶界面)開發框架,即方舟開發框架ArkUI框架),用于快速搭建漂亮的用戶界
    的頭像 發表于 07-06 08:04 ?724次閱讀
    學習鴻蒙必須要知道的幾個名詞

    TensorFlow與PyTorch深度學習框架的比較與選擇

    學習框架,它們各自擁有獨特的特點和優勢。本文將從背景介紹、核心特性、操作步驟、性能對比以及選擇指南等方面對TensorFlow和PyTorch進行詳細比較,以幫助讀者了解這兩個框架的優
    的頭像 發表于 07-02 14:04 ?1506次閱讀

    帶你詳細了解工業電腦

    扇設計、承受振動和惡劣環境的能力、輕松配置、全面的I/O選項、延長生命周期、耐用的組件。了解如何為您的應用選擇工業電腦對提高設施的生產力和效率至關重要。詳細了解
    的頭像 發表于 06-12 14:24 ?775次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>帶你<b class='flag-5'>詳細了解</b>工業電腦