鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:TextClock)

news/2024/5/30 3:14:40/文章来源:https://blog.csdn.net/m0_64420071/article/details/136684679

TextClock组件通过文本将当前系统时间显示在设备上。支持不同时区的时间显示,最高精度到秒级。

说明:

该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。

子组件

接口

TextClock(options?: { timeZoneOffset?: number, controller?: TextClockController })

从API version 11开始,该接口支持在ArkTS卡片中使用。

参数:

参数名参数类型必填参数描述
timeZoneOffsetnumber设置时区偏移量。
取值范围为[-14, 12],表示东十二区到西十二区,其中负值表示东时区,正值表示西时区,比如东八区为-8。设置值为该取值范围内的浮点数时会进行取整,舍弃小数部分。
对横跨国际日界线的国家或地区,用-13(UTC+13)和-14(UTC+14)来保证整个国家或者区域处在相同的时间,当设置的值不在取值范围内时,将使用当前系统的时区偏移量。
默认值:当前系统的时区偏移量
controllerTextClockController绑定一个控制器,用来控制文本时钟的状态。

属性

除支持通用属性和文本通用属性的fontColor、fontSize、fontStyle、fontWeight、fontFamily外,还支持以下属性:

名称参数类型描述
formatstringy:年(yyyy表示完整年份,yy表示年份后两位)
M:月(若想使用01月则使用MM)
d:日(若想使用01日则使用dd)
E:星期(若想使用星期六则使用EEEE,若想使用周六则使用E、EE、EEE)
H:小时(24小时制) h:小时(12小时制)
m:分钟
s:秒
SS:厘秒(format中S个数<3,全部按厘秒处理)
SSS:毫秒(format中S个数>=3,全部按毫秒处理)
a:上午/下午(当设置小时制式为H时,该参数不生效)
日期间隔符:"年月日"、“/”、"-"、"."(可以自定义间隔符样式,间隔符不可以为字母,汉字则作为间隔符处理)
允许自行拼接组合显示格式,即:年、月、日、星期、时、分、秒、毫秒可拆分为子元素,可自行排布组合。时间更新频率最高为一秒一次,不建议单独设置厘秒和毫秒格式。
当设置无效字母时(非上述字母被认为是无效字母),该字母会被忽略。如果format全是无效字母时,显示为格式yyyy/MM/dd aa hh:mm:ss.SSS
若format为空或者undefined,则使用默认值。

- 非卡片中默认值:aa hh:mm:ss
- 卡片中默认值:hh:mm
- 卡片中使用时,最小时间单位为分钟。如果设置格式中有秒或厘秒按默认值处理。
从API version 11开始,该接口支持在ArkTS卡片中使用。
textShadow11+ShadowOptions | Array<ShadowOptions>设置文字阴影效果。该接口支持以数组形式入参,实现多重文字阴影。
说明: 不支持fill字段, 不支持智能取色模式。
从API version 11开始,该接口支持在ArkTS卡片中使用。
fontFeature11+string设置文字特性效果,比如数字等宽的特性。
格式为:normal | <feature-tag-value>
- <feature-tag-value>的格式为:<string> [ <integer> | on | off ]
- <feature-tag-value>的个数可以有多个,中间用','隔开。
例如,使用等宽时钟数字的输入格式为:"ss01" on
从API version 11开始,该接口支持在ArkTS卡片中使用。

以下是format输入的格式样式及对应的显示效果:

输入格式显示效果
yyyy年M月d日 EEEE2023年2月4日 星期六
yyyy年M月d日2023年2月4日
M月d日 EEEE2月4日 星期六
M月d日2月4日
MM/dd/yyyy02/04/2023
EEEE MM月dd日星期六 02月04日
yyyy(完整年份)2023年
yy(年份后两位)23年
MM(完整月份)02月
M(月份)2月
dd(完整日期)04日
d(日期)4日
EEEE(完整星期)星期六
E、EE、EEE(简写星期)周六
yyyy年M月d日2023年2月4日
yyyy/M/d2023/2/4
yyyy-M-d2023-2-4
yyyy.M.d2023.2.4
HH:mm:ss(时:分:秒)17:00:04
aa hh:mm:ss(时:分:秒)上午 5:00:04
hh:mm:ss(时:分:秒)5:00:04
HH:mm(时:分)17:00
aa hh:mm(时:分)上午 5:00
hh:mm(时:分)5:00
mm:ss(分:秒)00:04
mm:ss.SS(分:秒.厘秒)00:04.91
mm:ss.SSS(分:秒.毫秒)00:04.536
hh:mm:ss aa5:00:04 上午
HH17

事件

除支持通用事件外,还支持以下事件:

名称功能描述
onDateChange(event: (value: number) => void)提供时间变化回调,该事件回调间隔为秒。
- value: Unix Time Stamp,即自1970年1月1日(UTC)起经过的秒数。
- 组件不可见时不回调。
- 非卡片中使用时,该事件回调间隔为秒。
- 卡片中使用时,该事件回调间隔为分钟。
从API version 11开始,该接口支持在ArkTS卡片中使用。

TextClockController

TextClock容器组件的控制器,可以将该控制器绑定到TextClock组件,通过它控制文本时钟的启动与停止。一个TextClock组件仅支持绑定一个控制器。

从API version 11开始,该接口支持在ArkTS卡片中使用。

导入对象

controller: TextClockController = new TextClockController();

start

start()

启动文本时钟。

从API version 11开始,该接口支持在ArkTS卡片中使用。

stop

stop()

停止文本时钟。

从API version 11开始,该接口支持在ArkTS卡片中使用。

示例

示例1

@Entry
@Component
struct Second {@State accumulateTime: number = 0// 导入对象controller: TextClockController = new TextClockController()build() {Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {Text('Current milliseconds is ' + this.accumulateTime).fontSize(20)// 以12小时制显示东八区的系统时间,精确到秒。TextClock({ timeZoneOffset: -8, controller: this.controller }).format('aa hh:mm:ss').onDateChange((value: number) => {this.accumulateTime = value}).margin(20).fontSize(30)Button("start TextClock").margin({ bottom: 10 }).onClick(() => {// 启动文本时钟this.controller.start()})Button("stop TextClock").onClick(() => {// 停止文本时钟this.controller.stop()})}.width('100%').height('100%')}
}

text_clock

示例2

@Entry
@Component
struct TextClockExample {@State textShadows : ShadowOptions | Array<ShadowOptions> = [{ radius: 10, color: Color.Red, offsetX: 10, offsetY: 0 },{ radius: 10, color: Color.Black, offsetX: 20, offsetY: 0 },{ radius: 10, color: Color.Brown, offsetX: 30, offsetY: 0 },{ radius: 10, color: Color.Green, offsetX: 40, offsetY: 0 },{ radius: 10, color: Color.Yellow, offsetX: 100, offsetY: 0 }]build() {Column({ space: 8 }) {TextClock().fontSize(50).textShadow(this.textShadows)}}
}

TextshadowExample

最后,有很多小伙伴不知道学习哪些鸿蒙开发技术?不知道需要重点掌握哪些鸿蒙应用开发知识点?而且学习时频繁踩坑,最终浪费大量时间。所以有一份实用的鸿蒙(Harmony NEXT)资料用来跟着学习是非常有必要的。 

这份鸿蒙(Harmony NEXT)资料包含了:鸿蒙开发必掌握的核心知识要点,内容包含了ArkTS、ArkUI开发组件、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开发、鸿蒙项目实战等等)鸿蒙(Harmony NEXT)技术知识点。

希望这一份鸿蒙学习资料能够给大家带来帮助,有需要的小伙伴自行领取,限时开源,先到先得~无套路领取!!

获取这份完整版高清学习路线,请点击→纯血版全套鸿蒙HarmonyOS学习资料

腾讯T10级高工技术,安卓全套VIP内容 →Android全套学习资料

腾讯T10级高工技术,安卓全套VIP课程

鸿蒙(Harmony NEXT)最新学习路线

  •  HarmonOS基础技能

  • HarmonOS就业必备技能 
  •  HarmonOS多媒体技术

  • 鸿蒙NaPi组件进阶

  • HarmonOS高级技能

  • 初识HarmonOS内核 
  • 实战就业级设备开发

有了路线图,怎么能没有学习资料呢,小编也准备了一份联合鸿蒙官方发布笔记整理收纳的一套系统性的鸿蒙(OpenHarmony )学习手册(共计1236页)鸿蒙(OpenHarmony )开发入门教学视频,内容包含:ArkTS、ArkUI、Web开发、应用模型、资源分类…等知识点。

获取以上完整版高清学习路线,请点击→纯血版全套鸿蒙HarmonyOS学习资料

《鸿蒙 (OpenHarmony)开发入门教学视频》

《鸿蒙生态应用开发V2.0白皮书》

图片

《鸿蒙 (OpenHarmony)开发基础到实战手册》

OpenHarmony北向、南向开发环境搭建

图片

 《鸿蒙开发基础》

  • ArkTS语言
  • 安装DevEco Studio
  • 运用你的第一个ArkTS应用
  • ArkUI声明式UI开发
  • .……

图片

 《鸿蒙开发进阶》

  • Stage模型入门
  • 网络管理
  • 数据管理
  • 电话服务
  • 分布式应用开发
  • 通知与窗口管理
  • 多媒体技术
  • 安全技能
  • 任务管理
  • WebGL
  • 国际化开发
  • 应用测试
  • DFX面向未来设计
  • 鸿蒙系统移植和裁剪定制
  • ……

图片

《鸿蒙进阶实战》

  • ArkTS实践
  • UIAbility应用
  • 网络案例
  • ……

图片

 获取以上完整鸿蒙HarmonyOS学习资料,请点击→纯血版全套鸿蒙HarmonyOS学习资料

总结

总的来说,华为鸿蒙不再兼容安卓,对中年程序员来说是一个挑战,也是一个机会。只有积极应对变化,不断学习和提升自己,他们才能在这个变革的时代中立于不败之地。 

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

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用API有效率地管理Dynadot域名,使用API设置域名隐私保护

关于Dynadot Dynadot是通过ICANN认证的域名注册商&#xff0c;自2002年成立以来&#xff0c;服务于全球108个国家和地区的客户&#xff0c;为数以万计的客户提供简洁&#xff0c;优惠&#xff0c;安全的域名注册以及管理服务。 Dynadot平台操作教程索引&#xff08;包括域名邮…

java代码将mysql表数据导入HBase表

java代码将mysql表数据导入HBase表 目录 一、项目目录介绍 二、主要接口方法与调用 三、全局配置文件 四、执行方式和输出介绍 五、项目依赖 一、项目目录介绍 主要包含四个接口:Com、RDB、HBase、RDBToHBase和其实现类xxxImpl。 两个配置文件:log4j日志配置文件log4j.pro…

Android App冷启动耗时优化

Android应用启动过程 Android应用启动过程&#xff0c;主要包含app::onCreate及执行前的Application阶段及Activity::onCreate执行之后的Activity阶段&#xff0c;以及两个阶段之间的间隙handleMessage阶段和最终页面渲染上屏完成前数据加载阶段四个区间组成。 具体来看&#x…

在 Android 上恢复已删除文件的 5 种简单方法

您可能会因为意外删除、未完成的 Android 更新、手机意外关机等原因而丢失 Android 上的重要数据。新技术的发展使许多手机功能或程序能够从内部恢复丢失的数据。 在 Android 上恢复已删除文件的 5 种简单方法 然而恢复成功率的不确定性也成为人们克服数据丢失困境的重要考虑因…

SQL语句在MySQL中的执行过程

有一条SQL语句&#xff0c;给到MySQL,是怎么被执行的 基本架构 连接器&#xff1a;进行身份认证&#xff0c;确定操作权限 查询缓存&#xff1a; 执行查询语句时&#xff0c;先查询缓存&#xff08;不太实用&#xff0c;MySQL 8.0 版本后删了&#xff09; 分析器&#xff1a…

运放的基础知识

运算放大器&#xff08;Operational Amplifier&#xff0c;简称运放&#xff09;是一种直流耦合、差模&#xff08;差动模式&#xff09;输入的高增益电压放大器&#xff0c;通常具有单端输出。它能产生一个相对于输入端电势差大数十万倍的输出电势&#xff08;对地而言&#x…

鸿蒙培训开发:就业市场的新热点~

金三银四在即&#xff0c;随着春节假期结束&#xff0c;各行各业纷纷复工复产&#xff0c;2024年的春季招聘市场也迎来了火爆的局面。最近发布的《2024年春招市场行情周报&#xff08;第一期&#xff09;》显示&#xff0c;尽管整体就业市场仍处于人才饱和状态&#xff0c;但华…

2024年华为HCIA-DATACOM新增题库(H12-811)

801、[单选题]178/832、在系统视图下键入什么命令可以切换到用户视图? A quit B souter C system-view D user-view 试题答案&#xff1a;A 试题解析&#xff1a;在系统视图下键入quit命令退出到用户视图。因此答案选A。 802、[单选题]“网络管理员在三层交换机上创建了V…

西井科技参与IATA全球货运大会 以AI绿动能引领智慧空港新未来

3月12日至14日&#xff0c;由国际航空运输协会IATA主办的全球货运大会&#xff08;World Cargo Symposium&#xff09;在中国香港成功举办&#xff0c;这是全球航空货运领域最大规模与影响力的年度盛会。作为大物流领域全球领先的“智能化与新能源化”综合解决方案提供商&#…

【数学建模】Topsis法python代码

昨天学习了Topsis法的基本概念&#xff0c;今天就来一起实践一下&#xff0c;用python实现topsis法 代码分块解释 1、引入numpy库 numpy as np 2、输入参评与指标数目 # 用户输入参评数目和指标数目&#xff0c;将输入的字符串转换为数值 print("请输入参评数目&#…

DHCP中继实验(思科)

华为设备参考&#xff1a;DHCP中继实验&#xff08;华为&#xff09; 一&#xff0c;技术简介 DHCP中继&#xff0c;可以实现在不同子网和物理网段之间处理和转发DHCP信息的功能。如果DHCP客户机与DHCP服务器在同一个物理网段&#xff0c;则客户机可以正确地获得动态分配的IP…

QT开发(二) 构建QMainWindow

1、前言 QMainWindow是Qt框架中用于创建应用程序主窗口的类。它是许多GUI应用程序的基础&#xff0c;提供了丰富的功能和灵活性&#xff0c;以支持用户界面的创建和管理。 QMainWindow的结构主要包括以下几个部分&#xff1a; 菜单栏&#xff08;Menu Bar&#xff09;&#…

C++:vector类

vector的介绍及使用 1. vector 是表示可变大小数组的序列容器。 2. 就像数组一样&#xff0c; vector 也采用的连续存储空间来存储元素。也就是意味着可以采用下标对 vector 的元素进行访问&#xff0c;和数组一样高效。但是又不像数组&#xff0c;它的大小是可以动态改变的…

金山办公内推

作为金山办公刚刚校招等待入职的一员&#xff0c;我诚挚地邀请您加入我的内推计划&#xff0c;与我一起共同打造卓越的工作环境和未来。 我能帮你 &#xff08;与直接填我的内推码不同&#xff0c;我直接通过内部问卷帮你投&#xff09; 1&#xff0c;直接通过校招群里的连接…

【精选】代码Ai生成,

https://developer.aliyun.com/topic/lingma/activities/202403?taskCode14508&recordIda559ee76fb387118328a69b0cc4cd090#/?utm_contentm_fission_1 「通义灵码 体验 AI 编码&#xff0c;开 AI 盲盒」&#xff0c;通义灵码 搞活动&#xff0c;注册可以抽盲盒&#xf…

中国城市统计年鉴、中国县域统计年鉴、中国财政统计年鉴、中国税务统计年鉴、中国科技统计年鉴、中国卫生统计年鉴​

统计年鉴是指以统计图表和分析说明为主&#xff0c;通过高度密集的统计数据来全面、系统、连续地记录年度经济、社会等各方面发展情况的大型工具书来获取统计数据资料。 统计年鉴是进行各项经济、社会研究的必要前提。而借助于统计年鉴&#xff0c;则是研究者常用的途径。目前国…

【linux深入剖析】操作系统与用户之间的接口:自定义简易shell制作全过程

&#x1f341;你好&#xff0c;我是 RO-BERRY &#x1f4d7; 致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 &#x1f384;感谢你的陪伴与支持 &#xff0c;故事既有了开头&#xff0c;就要画上一个完美的句号&#xff0c;让我们一起加油 目录 1.shell2.自定义shell的准…

DDD领域模型驱动

传统MVC架构 DDD架构&#xff1a; api层&#xff1a;api请求方式&#xff0c;透传【传递参数】&#xff0c;几个业务对应api 业务层&#xff1a;做编排&#xff0c;业务里要有哪些服务&#xff0c;执行顺序是什么&#xff0c;以及怎么做 领域层&#xff1a;负责领域内调用&a…

21、设计模式之备忘录模式(Memento)

一、什么是备忘录模式 备忘录模式又称快照模式&#xff0c;是一种行为型设计模式。它可以在不破坏封装性的前提下捕获一个对象的内部状态&#xff0c;并在对象之外保存这个状态&#xff0c;以便在需要的时候恢复到原先保存的状态。 二、角色组成 源发器&#xff08;Originator…

ubuntu上通过apt-get 安装指定版本的ecal

在ubuntu上想通过apt get直接安装ecal不自己编译源码安装的话&#xff0c; ecal官网给出的安装指令是 2. Installing eCAL — Eclipse eCAL™ sudo add-apt-repository ppa:ecal/ecal-latest sudo apt-get update sudo apt-get install ecal 要指定版本的时候 按照提示&…