HarmonyOS开发:UI开展前的阶段总结

news2024/12/26 21:06:57

前言

关于HarmonyOS,陆陆续续总结了有14篇的文章,大家可以发现,没有一篇是关于UI相关的,不是自己没有分享的打算,而是对于这些UI而言,官方都有着一系列的文档输出,如果我再一一的分享,确实有点画蛇添足的意思,所以之前,一直从其他的方面进行总结,当然了这些方面也是平常开发中无法忽视的。

当足够的了解了HarmonyOS的相关特性之后,再去介入UI,你会发现无比的轻松,特别当你有着其他的声明式UI开发的经验时,对于HarmonyOS的UI,大致一扫,也就会了。

如何把UI阐述的简单易懂,又能方便大家使用,这是自己一直想做的事情,即区别于官方又能实际的结合需求,是接下来自己对UI相关的知识点的分享。

初始化准备

无论是之前已经发表的文章还是接下来讲述的内容,Api都是基于9以及以上的版本,采用的语言生态是ArkTS语言,其模型是Stage,如果你的环境和我的有出入,建议以我的为主,进行学习和开发项目,主要原因如下:

ArkTS语言

虽然ArkUI框架也就是方舟开发框架(HarmonyOS提供了一套UI开发框架)针对不同目的和技术背景的开发者提供了两种开发范式,基于ArkTS的声明式开发范式和类Web开发范式,但是仍然建议你第一选择,一定要选择声明式开发范式的ArkTs语言。

 

主要原因有来自于官方的推荐,以及在开发效率和应用性能上,ArkTs语言性能更佳,开发更高效。

Stage模型

采用Stage模型,是因为以后主推且会长期演进的模型,下图来源于官方文档。

未来HarmonyOS舍弃AOSP是必然的事件,大家尽量舍弃之前Api,已全新的Api进行介入,方便后续的项目开发。

以脚手架为产出物

如何让大家在学习HarmonyOS的时候,更加的方便,遇到相关UI效果,能够第一时间的查看到代码,基于之前的Android和Flutter,便萌生了一个HarmonyOS版的脚手架。

之前的Android端脚手架

之前的Flutter端脚手架

在移动端,也许,大家对脚手架有陌生感,说白了就是一个工具,通过工具,可以帮助我们生成代码,提高我们的开发效率,和IDE插件不同的是,它可以更加的灵活,拓展出插件所实现不了的一些功能。

那么接下来,我也会仿照着之前所做的一些工具,结合HarmonyOS语言,以UI为介入点,从0到1,开发出一个HarmonyOS版的脚手架,当然了工具只是最终的产出物,实际还是以技术要点为文章,旨在既能帮助到大家学习,又能帮助到大家以后的项目开发。

第一阶段还是以桌面程序为主,第二阶段可以拓展到DevEco Studio插件里。

虽然说,ArkUI-X进一步将ArkUI扩展到了多个OS平台,但是截至到当前,还未支持PC端,那么桌面程序只能选择其他语言了,一开始想到的是Flutter,毕竟刚开发过,但是HarmonyOS已经有了NodeJs,基于此,便改用Electron作为桌面开发工具,后续如果出了PC端,再进行移植。

最后总结

接下来的一段时间,都会写一些关于UI相关的,毕竟UI是用于渲染数据的,是HarmonyOS开发中必不可少也尤为重要的组成部分,会和官方进行差异化,和实际的业务进行关联,并沉淀于脚手架,希望接下来能够帮助到大家。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1189403.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SPSS线性回归

前言: 本专栏参考教材为《SPSS22.0从入门到精通》,由于软件版本原因,部分内容有所改变,为适应软件版本的变化,特此创作此专栏便于大家学习。本专栏使用软件为:SPSS25.0 本专栏所有的数据文件请点击此链接下…

高级运维学习(十五)Zabbix监控(二)

一 Zabbix 报警机制 1 基本概念 自定义的监控项默认不会自动报警首页也不会提示错误需要配置触发器与报警动作才可以自动报警 2 概念介绍 (1)触发器 (trigger) 表达式,如内存不足300M,用户超过30个等 当触发条件发生后&a…

【自然语言处理】基于python的问答系统实现

一,文件准备 该问答系统是基于已知的问题和其一一对应的答案进行实现的。首先需要准备两个文本文件,分别命名为“question.txt”和“answer.txt”,分别是问题文件和答案文件,每一行是一个问题以及对应的答案。 问题文件: 中国的首…

Pytorch模型使用与修改、保存与加载

模型的使用及修改、保存与加载 以图像处理中torchvision为例,PyTorch通过torchvision.models模块提供了更多的预训练模型. 在图像分类当中,包括许多模型 import torchvision import warnings import torch warnings.filterwarnings("ignore&quo…

3D Gaussian Splatting:用于实时的辐射场渲染

Kerbl B, Kopanas G, Leimkhler T, et al. 3d gaussian splatting for real-time radiance field rendering[J]. ACM Transactions on Graphics (ToG), 2023, 42(4): 1-14. 3D Gaussian Splatting 是 Siggraph 2023 的 Best Paper,法国团队在会议上展示了其实现的最…

软件测试|iOS 自动化测试——技术方案、环境配置

移动端的自动化测试,最常见的是 Android 自动化测试,我个人觉得 Android 的测试优先级会更高,也更开放,更容易测试;而 iOS 相较于 Android 要安全稳定的多,但也是一个必须测试的方向,这个系列文…

Bean作用域

从笔者之前的博客,我们可以看出 Spring 是⽤来读取和存储 Bean,因此在 Spring 中 Bean 是最核⼼的操作 资源,所以接下来我们深⼊学习⼀下 Bean 对象:Bean作用域! 限定程序中变量的可用范围叫做作用域!或者…

【遮天】荒古禁地采取圣药,姬老自己走上绝路,故事扣人心悬

Hello,小伙伴们,我是小郑继续为大家深度解析国漫资讯。 深度爆料,《遮天》动漫第30话最新剧情解析,姬云峰,姬家的长老,地位崇高,深受家族成员的尊敬和信赖。他的智慧和经验在家族中享有极高的声望&#xf…

【MATLAB源码-第72期】基于matlab的OFDM-IM索引调制系统在高斯,瑞利,莱斯信道误码率对比,对比传统OFDM系统。

操作环境: MATLAB 2022a 1、算法描述 OFDM-IM索引调制技术是一种新型的无线通信技术,它将正交频分复用(OFDM)和索引调制(IM)相结合,以提高频谱效率和系统容量。OFDM-IM索引调制技术的基本思想…

【字符串】【完整程序+倒序输出+每个区间倒序输出】KamaCoder55

【字符串】【完整程序倒序输出每个区间倒序输出】KamaCoder55 解法1 完整程序书写kama 倒序输出每个区间倒序输出 ---------------🎈🎈题目链接🎈🎈------------------- 解法1 完整程序书写kama 倒序输出每个区间倒序输出 时间…

docker部署redis6

前言:在离线服务器上(无联网),部署redis的方式,采用docker是比较方便的。下面将描述如何使用docker部署单机版redis 环境:centos 7 redis:6.2.14 docker:20.10.9 1.下载 redis 镜像…

取产品之道、赚效率的钱,锅圈万店背后的赢家法则

万店,一个真正意义上的规模壁垒,当它出现在任何行业时,都意味着这个玩家身上存在许多领先于行业的优势。 这一点,在刚于近日登录港交所的锅圈食品(以下简称“锅圈”)身上尤其明显——2017年,锅…

浅谈插接母线温度在线监测系统研究与应用-安科瑞黄安南

摘要 低压封闭式插接母线是供配电设施的关键部件,安装在生产车间内部高空,不易保养和维护,在安装不良或保养不当时易发生故障。插接点温度的异常变化与母线故障的发生有着密切的关系,以汽车整车制造工厂为例,提出母线接…

梓航DIY无限建站-3.5.8(企业官网 应用首页 PC建站 14套模板切换,自由组合页面,无限多开)

梓航DIY无限建站是一款支持无限建站的公众号应用。 自定义网址 全局样式设置 极速建站 更灵活 更方便。 1、默认页面指定设置,更灵活、更方便; 2、全局样式设置,减少页面重复设置工作; 3、不限数量网站制作装修(想做…

VR虚拟现实:VR技术如何进行原型制作

VR虚拟现实原型制作 利用VR虚拟现实软件进行原型制作可以用于增强原型测试期间的沉浸感,减少产品设计迭代次数,并将与产品原型制作相关的成本降低40-65%。 VR虚拟现实原型制作市场规模 用于原型制作的虚拟现实 (VR) 市场在 2017 年估计为 2.104 亿美元…

ChineseChess.2023.11.09.01

中国象棋残局模拟器ChineseChess.2023.11.09.01

淘宝天猫京东苏宁1688等平台关键词监控价格API接口(店铺商品价格监控API接口调用展示)

淘宝天猫京东苏宁1688等平台关键词监控价格API接口(店铺商品价格监控API接口调用展示)代码对接如下: item_get-获得淘宝商品详情 公共参数 请求地址: https://o0b.cn/anzexi 名称类型必须描述keyString是调用key(必须以GET方式…

Android系统中设置TextView的行间距

Android系统中TextView默认显示中文时会比较紧凑,不是很美观。 为了让每行保持一定的行间距,可以设置属性android:lineSpacingExtra或android:lineSpacingMultiplier。 1、设置行间距:android:lineSpacingExtra,取值范围&#xf…