关于harmonyos:ArkUI框架更懂程序员的UI信息语法

38次阅读

共计 1606 个字符,预计需要花费 5 分钟才能阅读完成。

ArkUI 框架简化代码的“机密”

在传统的开发过程中,总有个问题在困扰我:如何实现前端 view 与后端数据的同步更改?例如:在某个视频类 app 的页面,如果我想要实现视频的点击播放性能,须要怎么样进行呢?

如果我应用传统的命令式开发框架去实现,容易造成的麻烦在于,每次后端的数据产生更改,我都须要手动更新前端 view。为了解决这个问题,我便在 ArkUI 上实现了同样的性能,神奇的事件产生了,霎时代码洁净了很多,只用几行代码就实现了雷同的性能。

于是我搜寻了一下 ArkUI 有什么劣势。发现很重要的一个起因:ArkUI 应用了申明式 UI 开发框架,同时在 UI 形容上使用了能够和语言运行时深度联合的自研语言 ArkTS。申明式框架的“庐山真面目”

这里必定会有小伙伴提出疑难:什么是申明式开发框架?在介绍之前,咱们先理解一下传统的命令式开发框架思路,作为一个程序员,一旦我想要更改 View,就须要先更改 View 对应的 Data, 而后再更改 View 的显示内容。

而申明式开发框架则不同,ArkUI 的申明式框架框架更为高效,能够让 data 与前端 view 同步更新数据。

那 ArkUI 框架是如何实现同步更新的呢?这个原理非常简单,设想一下我当初要盖一栋大楼,我须要把我的项目先交给包工头,包工头再把具体的工作调配给工人,工人根据图纸建造大楼,当图纸变动的时候,工人也须要依照图纸更改建造动作。

与此绝对的,在 ArkUI 命令式框架外部,有两个重要的角色,代理和拦截器。

代理能够将指标数据进行代理,并为指标数据绑定到拦截器上。而拦截器会监听指标数据的变动,当数据更新时,拦截器就会重写数据的 set 办法,同时自动更新数据对应的前端页面,整个过程不须要程序员进行手动命令更新。

原子布局能力实现页面布局一致性

申明式开发框架胜利解决了传统开发过程中,代码简短的问题。然而在理解申明式开发框架的过程中,我不经想到一个问题:有没有办法,让我开发一次代码,就能够在多个设施上适配呢?

ArkUI 就提供了这一性能,于是我入手试了一下。当设施尺寸变宽时,我能够通过原子布局的均分能力去实现页面布局的一致性,也能够通过栅格布局,去解决多尺寸多设施的动静布局问题。

刚刚提到的原子布局能力蕴含均分能力,折行能力,拉伸能力,缩放能力,延长能力,占比能力和暗藏能力。能够帮忙咱们在不同设施上放弃体验的一致性。这样自适应的问题解决了。

针对设施独有的个性,比方平板适配左侧导航栏,这个有什么办法实现呢?这里我找到了媒体查问,它能够判断设施类型,设计出相匹配的布局款式,同时还能够监听屏幕尺寸动态变化,比方横竖屏切换能够通过 orientation 属性判断屏幕横竖状态来动静适配,另外还反对判断分屏状态、折叠屏开展状态等,这样就解决了我一次开发多端部署的难题。

同时,ArkUI 框架为开发者提供了多态组件,同一控件在不同的设施上会呈现出不同的状态,所以开发者在应用多态组件时,无需思考设施差别,只需关注性能实现即可。罕用组件在这里咱们总结了一下罕用组件:

常见的容器类组件有列表,弹出框。

展现类组件有文本,进度条,事件标记和气泡批示。

导航类组件有 Tab 页签。

操作类组件有按钮,下拉选项,选择器,评分条,搜寻框和菜单。

这样一来,我只须要抉择适合的组件进行开发,就能够一次开发,多端部署。大大节俭我的开发工夫。

总结

依据前文不难看出,ArkUI 是一套用于构建 HarmonyOS 利用界面的 UI 开发框架。咱们总结一下它次要有以下三个个性:

  1. 极简的 UI 信息语法
  2. 反对多设施开发,一次开发多端部署
  3. 开箱即用的多态 UI 组件

从而帮忙开发者晋升 HarmonyOS 利用界面的开发效率。

对于 ArkUI 的介绍明天就到这里了,需想理解更多?

感兴趣的搭档们能够点击链接 https://www.bilibili.com/vide… 进行学习。

如果你喜爱这期的视频,欢送在下方留言点赞分享,你的反对就是咱们更新的最大能源,咱们下期再见~

正文完
 0