方舟UI框架

方舟UI框架(简称ArkUI[1],原名方舟开发框架)是一个由华为开发的声明式用户界面框架,用于在原生鸿蒙OpenHarmony以及Oniro OS应用程序上构建用户界面。ArkUI采用基于TypeScript声明式UI语法扩展而来的ArkTS英语ArkTS语言,同时也支持使用鸿蒙标记语言(HarmonyOS Markup Language,缩写HML)、JavaScript和CSS以类似Vue 2的语法、MVVM范式开发。[2][3][4]

ArkUI与DevEco Studio IDE集成,提供实时预览[5]、调试和其他开发功能。

ArkUI-X是基于ArkUI扩展的跨平台用户界面框架,支持OpenHarmony、HarmonyOS、Android、 iOS。[6]

历史

在2023年8月的HDC 2023大会上,华为宣布了HarmonyOS 4.0的ArkUI改进,可以使用ArkTS和Ark Engine进行原生HarmonyOS NEXT软件开发,并引入了ArkGraphics 2D和ArkGraphics3D框架。[7]

特性

页面是ArkUI中系统调度的最小单位,组件是最小分割单位。[2]系统组件是ArkUI框架中的内置组件,分为容器组件和基础组件两种。例如,Row和Column都属于容器组件,可容纳其他组件;Text和Button组件属于基础组件。[8]

示例代码

import ArkTS
// Index.ets

import router from '@ohos.router';

@Entry
@Component
struct Index {
  @State message: string = 'Hello World'

  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
        // Add a button to respond to user clicks.
        Button() {
          Text('Next')
            .fontSize(30)
            .fontWeight(FontWeight.Bold)
        }
        .type(ButtonType.Capsule)
        .margin({
          top: 20
        })
        .backgroundColor('#0D9FFB')
        .width('40%')
        .height('5%')
        // Bind the onClick event to the Next button so that clicking the button redirects the user to the second page.
        .onClick(() => {
          router.pushUrl({ url: 'pages/Second' })
        })
      }
      .width('100%')
    }
    .height('100%')
  }
}

其中,@ohos.router 路由库实现了页面的流转,调用前需在 main_pages.json 文件中声明。[9]

应用

  • 鸿蒙原生版淘宝通过使用ArkUI和ArkTs能力,将购物结算场景性能提升至安卓版本的1.5 倍。[10]

参考文献

  1. ^ 方舟开发框架(ArkUI)概述. [2024-08-07]. (原始内容存档于2024-08-14) (中文(中国大陆)). 
  2. ^ 2.0 2.1 褚洪波. 鸿蒙App开发全流程实战. 机械工业出版社. ISBN 9787111714910. 
  3. ^ Parker, Victoria. HDC Technical Sub-forum: A comprehensive look at HarmonyOS 'next-generation UI Framework. Mo4Tech. (原始内容存档于2024-02-13). 
  4. ^ 徐, 礼文. HarmonyOS操作系统应用开发实战(JavaScript版). 清华大学出版社. ISBN 9787302600312. 
  5. ^ 范承宇; 李竞择; 欧阳迪. 基于方舟开发框架的智能装备监控应用研究. 机电产品开发与创新 (中国兵器装备集团自动化研究所有限公司). 2024-03-28, 37 (02): 114–117 –通过CNKI. 
  6. ^ IT之家. 开源鸿蒙 OpenHarmony 4.0 Beta2 发布,方舟框架 ArkUI-X 首发. 搜狐. [2024-11-25]. 
  7. ^ Bhati, Kamlesh. Huawei HarmonyOS NEXT Official Now: Bring Spatial Design and Vivid Color Concepts. Sparrownews.com. (原始内容存档于2024-02-13). 
  8. ^ 刘玥; 张荣超. 鸿蒙原生应用开发:ArkTS语言快速上手. 人民邮电出版社. 2024-07-01. ISBN 9787115642509. 
  9. ^ 张欧亚; 黄涛; 曾超; 叶荣涛. 鸿蒙OS智能终端适老化软件研发探索. 信息技术与工程学院学报 (广州商学院). 2024, (13). doi:10.19850/j.cnki.2096-4706.2024.13.031 –通过CNKI (中文(中国大陆)). 
  10. ^ IT之家. 启动时间 1 秒内,淘宝鸿蒙原生版上线 HarmonyOS NEXT. 腾讯网. 2024-07-22 [2024-11-25] (中文(中国大陆)).