Tips:aboutToAppear:页面生命周期。请参考官方文档:https:developer.huawei.comconsumercndocharmonyosguidesarktspagecustomcomponentslifecycle0000001820879573Blank():空白填充组件。请参考官方文档:https:developer.huawei.comconsumercndocharmonyosreferencestsbasiccomponentsblank0000001815767768一、预览点击某个任务时,进入当前Detail.ets页面对该任务进行修改或删除。1.判断isNew的值是false,标题文本显示...
Tips:Watch、Provide:对状态变量的监听。请参考我的帖子:https:developer.huawei.comconsumercnforumtopic0208152234389094513fid0101587866109860105router:页面路由。请参考官方文档:https:developer.huawei.comconsumercndocharmonyosreferencesjsapisrouter0000001820880773ZHCNTOPIC0000001811317158routerpushurl9promptAction:创建并显示文本提示框。请参考官方文档:https:developer.huawei.comconsumercndocharm...
Tips:(参考上一篇)一、预览1.任务时长弹窗是一个组件,使用了第10篇我们自定义的弹窗。2.任务时长选项、分割线是嵌入在自定义弹窗的内容;而窗体顶部的标题、底部的按钮是自定义弹窗原有的元素,可通过传入参数设置标题、按钮文本及按钮点击事件。二、任务时长选项TASKDURATION在目录constants下的DetailConstant.ets类中定义一个静态常量TASKDURATION:任务时长选项数组15分钟120分钟。代码如下:任务时长staticreadonlyTASK...
Tips:Consume:应用于与后代组件的双向数据同步,应用于状态数据在多个层级之间传递的场景。请参考官方文档:https:developer.huawei.comconsumercndocharmonyosguidesarktsprovideandconsume0000001820879589ohos.reminderAgentManager:后台提醒代理。请参考官方文档:https:developer.huawei.comconsumercndocharmonyosreferencesV5jsapisreminderagentmanagerV5reminderagentmanagerpublishreminderFlex布局:请参考官方文...
Tips:CustomDialogController通过此类显示自定义弹窗,便于自定义弹窗的样式和内容。请参考官方文档:https:developer.huawei.comconsumercndocharmonyosreferencesV5tsmethodscustomdialogboxV5customdialogcontrollerBuilderParamBuilderParam装饰的方法只能被自定义构建函数(Builder装饰的方法)初始化。请参考官方文档:https:developer.huawei.comconsumercndocharmonyosguidesarktsbuilderparam0000001820999553ZHCNTOPI...
Tips:State、Link装饰器的使用;参考我的帖子:https:developer.huawei.comconsumercnforumtopic0208152234389094513fid01015878661098601051.红色框:任务设置项列表,把它定义为一个组件对象SettingList。2.绿色框:任务设置项,这里有两个设置项,分别是任务名称和任务时长,后续可能有更多的设置项。所以把这些设置项抽象为一个类对象TaskSettingItem,这个对象类有名称(任务名称)、内容(早起跑步)和类型。3.设置项类型...
Tips:层叠布局Stack:请参考官方文档https:developer.huawei.comconsumercndocharmonyosreferencesV5tscontainerstackV5滑动选择文本组件TextPicker:请参考官方文档https:developer.huawei.comconsumercndocharmonyosreferencesV5tsbasiccomponentstextpickerV5运行效果:一、组件拆解面向对象编程,蓝、绿、黄都是时间选择对象,可抽象定义为一个类;但每个对象又有各自的特点,蓝色是午时、绿色是12小时制、黄色是分,这些...
Tips:media媒体资源的使用;float.json、color.json资源文件的使用;组件属性的定义。预览效果:一、创建组件文件右击component目录新建ArkTSFile,文件命名为TitleContainer.ets。PreviewComponentexportdefaultstructTitleContainer{build(){行布局Row(){}}}二、组件布局使用Row容器进行行布局,从左到右分别是:返回按钮(图片)、标题内容(文本)、确定按钮(图片)。在images目录下添加按钮图片,图片文件见文章最后的附...
Tips:Column组件的使用;color.json资源文件的使用。一、页面布局页面分为三个部分,从上往下分别是:标题菜单栏、时间选择器和任务列表。每个部分都可以设计为独立的组件,后续文章分别介绍。二、新建页面右击pages目录,新建Page页面命名为Detail。三、布局代码在Detail.ets文件页面中,我们删除默认的布局代码。使用column容器布局,从上往下加入自定义组件(待完善,见后续文章):标题菜单栏、时间选择器和任务列表。关于C...
Tips:Preview装饰器,支持组件可预览;Component装饰器,自定义组件;Canvas组件的使用;使用RenderingContext在Canvas组件上绘制图形,请参考官方文档:https:developer.huawei.comconsumercndocharmonyosreferencesV5tscanvasrenderingcontext2dV5一、自定义闹钟组件1.新建component目录用来存放自定义组件,在其下再新建ArkTS文件,命名为ClockArea.ets。2.页面主要包括画布组件Canvas,点击画布切换显示时钟表盘或数字时间...
一、入口文件创建项目后默认打开代码文件EntryAbility.ets,这个也是程序的入口文件,它是继承父类UIAbility。关于它的概述及生命周期,请查阅官方文档:https:developer.huawei.comconsumercndocharmonyosguidesuiabilityoverview0000001774119974二、启动页面程序运行起来首先打开的页面是Index.ets,pagesIndex是页面的相对路径,后续添加新页面时,必须在mainpages.json文件中配置页面路径。三、页面布局页面元素必须被包含...
一、新建项目1.打开DevEcoStudio文件新建新建项目,选择元服务AtomicService默认模板EmptyAbility。2.设置元服务的工程名称、Bundlename等,模型选Stage,语言是ArkTS,支持的设备类型只选手机。3.完成后,项目创建成功,如图示。左侧项目结构描述,请查阅我的帖子:https:developer.huawei.comconsumercnforumtopic0201155143030784198fid0101587866109860105二、安装AI智能编码助手插件开始编码之前,先安装AI智能编码助手插...
零基础新手或转行进入鸿蒙生态应用的开发者,请提前准备以下内容:一、注册华为帐号此帐号在华为官方各平台通用,比如:华为手机、华为商城、华为云、华为开发者联盟等等。https:id1.cloud.huawei.comCASportaluserRegisterregbyphone.html二、学习路径1.读白皮书阅读5本白皮书。https:developer.huawei.comconsumercndocguidebookharmonyecoappguidebook0000001761818040三、开发者认证按以上路径学习完成后,建议每位开发者参...
一、介绍【时间盒子】系列内容将帮助开发者学习如何构建一个全新的HarmonyOS元服务应用,学习使用DevEcoStudio创建新项目、使用预览器预览页面、使用真机调试APP、自定义弹窗、使用系统提醒能力(闹钟)、使用首选项数据持久化、熟悉ArkUI页面布局、了解基础组件如Text、Image、Button等。元服务功能虽然简单,但通过本系列学习,可以熟悉鸿蒙应用开发的整个生命周期:从开发语言到开发工具、界面设计到代码编写、功能测试到构...
运行效果:一、组件拆解面向对象编程,蓝、绿、黄都是时间选择对象,可抽象定义为一个类;但每个对象又有各自的特点,蓝色是午时、绿色是12小时制、黄色是分,这些可以通过对象的属性区分。所以,可以给这个对象类定义三个属性:时间类型、当前选择的值和选项数据。二、时间选择对象类新建目录viewmodel,存放数据实体对象。右击目录viewmodel新建ArkTSFile,文件命名为DayDataItem。DayDataItem.ets就是时间选择对象类,并定义...
一、预览1.红色框:整个弹窗就是我们自定义的弹窗,从上至下分别是标题、内容、按钮,且它们都可自定义。①弹窗窗体的标题可自定义;②弹窗底部的按钮文本、点击触发的事件也是可以自定义。2.蓝色框:弹窗显示的具体内容。根据点击不同的设置项,弹窗的内容可能不一样。比如:设置任务名称的弹窗要求输入任务名称的文本框;设置任务时长的弹窗要求选择时长;等等。二、CommonDialog结构体为了与普通组件区分,在component目录下...
简单说明白:装饰器State、Prop、Link、Provide、Consume修饰变量,Watch监听变量状态发生变化首先要明白什么是“状态变量”?即被状态装饰器(State、Prop、Link、Provide、Consume)修饰的变量,比如Statestr:string'';str就是状态变量。状态变量值的改变会引起UI界面重新渲染。StateState装饰的变量,是私有的,只能被组件内部访问,在声明时必须指定其类型和本地初始化。以下示例为State装饰的简单类型,count被State装饰成...
效果如下:准备图片素材表盘图片:iconclockpan.png时针图片:iconhourhand.png分针图片:iconminutehand.png秒针图片:iconsecondhand.png使用Canvas组件创建CanvasRenderingContext2D对象privaterenderContext:CanvasRenderingContext2DnewCanvasRenderingContext2D(newRenderingContextSettings(true));设置画布关键属性和事件画布尺寸privatecanvasSize:number252;绘制间隔时间privatedrawInterval:number1;privateclockRad...
使用自己封装的标题栏容器组件,可以满足页面常用的顶部标题栏功能及样式的需求。常见的标题栏1.返回按钮+标题2.返回按钮+标题+功能按钮3.关闭取消按钮+标题+确认完成按钮组件TitleContainer.ets代码如下:importrouterfrom'ohos.router';PreviewComponentexportdefaultstructTitleContainer{返回按钮图片privatebackImg:stringResource$r("app.media.iconcancel");返回按钮点击事件privatebackFunc:()void;标题privatetitle:st...
pxvpfp三者的区别,请查看我之前的帖子:https:developer.huawei.comconsumercnforumtopic0203149707348916165fid0101587866109860105UI设计师给的设计稿如下:鸿蒙开发工程师实现页面时,不能直接使用px的数值,大小位置单位应该使用vp,字体大小单位应该使用fp。否则在手机外的其他鸿蒙设备上,页面显示或排版偏差就比较大。为了解决不同单位转换,我写了一个公共类,代码如下:importdisplayfrom'ohos.display';import{Globa...