当前位置: 首页 > news >正文

文本网站开发英文文献怎样开网站

文本网站开发英文文献,怎样开网站,泰安创益网络科技有限公司,唐山地区网站开发公司简单时钟 介绍 本示例通过使用ohos.display接口以及Canvas组件来实现一个简单的时钟应用。 效果预览 使用说明 1.界面通过setInterval实现周期性实时刷新时间,使用Canvas绘制时钟,指针旋转角度通过计算得出。 例如:"2 * Math.PI / …

简单时钟

介绍

本示例通过使用@ohos.display接口以及Canvas组件来实现一个简单的时钟应用。

效果预览

1

使用说明

1.界面通过setInterval实现周期性实时刷新时间,使用Canvas绘制时钟,指针旋转角度通过计算得出。

例如:"2 * Math.PI / 60 * second"是秒针旋转的角度。

具体实现

  • 本示例展示简单时钟的方法主要封装在Index中,源码参考:[Index.ets] 。
/** Copyright (c) 2022 Huawei Device Co., Ltd.* Licensed under the Apache License, Version 2.0 (the "License");* you may not use this file except in compliance with the License.* You may obtain a copy of the License at**     http://www.apache.org/licenses/LICENSE-2.0** Unless required by applicable law or agreed to in writing, software* distributed under the License is distributed on an "AS IS" BASIS,* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.* See the License for the specific language governing permissions and* limitations under the License.*/
import { display } from '@kit.ArkUI';
import Logger from '../utils/Logger';
import DrawClock from '../utils/DrawClock';
import CommonConstants from '../common/CommonConstants';const HEIGHT_ADD: number = CommonConstants.HEIGHT_ADD; // 表盘下面需要绘制时间,canvas高度是宽度加150
const TAG: string = 'Index';@Entry
@Component
struct Clock {@State canvasWidth: number = CommonConstants.DEFAULT_WATCH_SIZE; // 300是表盘默认大小private settings: RenderingContextSettings = new RenderingContextSettings(true);private context: CanvasRenderingContext2D = new CanvasRenderingContext2D(this.settings);private radius: number = CommonConstants.DEFAULT_WATCH_RADIUS; // 默认表盘半径private intervalId: number = 0;private drawClock: DrawClock = new DrawClock();updateTime = () => {this.context.clearRect(0, 0, this.canvasWidth, this.canvasWidth + HEIGHT_ADD);let nowTime = new Date();let hour = nowTime.getHours();let minute = nowTime.getMinutes();let second = nowTime.getSeconds();let time = `${this.fillTime(hour)}:${this.fillTime(minute)}:${this.fillTime(second)}`;this.drawClock.drawClock(this.context, this.radius, this.canvasWidth, hour, minute, second, time)this.context.translate(-this.radius, -this.radius);}fillTime(time: number) {return time < CommonConstants.NUMBER_TEN ? `0${time}` : `${time}`;}onPageShow(): void {this.updateTime();this.intervalId = setInterval(this.updateTime, CommonConstants.INTERVAL_TIME)}onPageHide() {clearInterval(this.intervalId);}aboutToAppear() {this.getSize();}// 获取设备宽高计算表盘大小async getSize() {let mDisplay = display.getDefaultDisplaySync();Logger.info(TAG, `getDefaultDisplay mDisplay = ${JSON.stringify(mDisplay)}`);this.canvasWidth = px2vp(mDisplay.width > mDisplay.height ? mDisplay.height * CommonConstants.CONVERSION_RATE :mDisplay.width * CommonConstants.CONVERSION_RATE);this.radius = this.canvasWidth / CommonConstants.NUMBER_TWO;}build() {Stack({ alignContent: Alignment.Center }) {Canvas(this.context).padding({ top: $r('app.float.canvas_padding_top') }).width(this.canvasWidth).height(this.canvasWidth + HEIGHT_ADD).onReady(() => {this.updateTime();this.intervalId = setInterval(this.updateTime, CommonConstants.INTERVAL_TIME);})}.width(CommonConstants.FULL_PERCENTAGE).height(CommonConstants.FULL_PERCENTAGE)}
}
  • 设置表盘大小:通过Index中的display.getDefaultDisplay()方法来获取设备宽高计算表盘大小;
  • 获取当前时间:调用updateTime函数,执行new Date().getHours()、new Date().getMinutes()、new Date().getSeconds()获取当前时间。
  • 绘制表盘内容:通过CanvasRenderingContext2D来画表盘背景、时针、分针、秒针、圆心以及表盘下方文本;
  • 启动时钟:添加setInterval定时器,每隔1s执行一次updateTime函数。

以上就是本篇文章所带来的鸿蒙开发中一小部分技术讲解;想要学习完整的鸿蒙全栈技术。可以在结尾找我可全部拿到!
下面是鸿蒙的完整学习路线,展示如下:
1

除此之外,根据这个学习鸿蒙全栈学习路线,也附带一整套完整的学习【文档+视频】,内容包含如下

内容包含了:(ArkTS、ArkUI、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、鸿蒙南向开发、鸿蒙项目实战)等技术知识点。帮助大家在学习鸿蒙路上快速成长!

鸿蒙【北向应用开发+南向系统层开发】文档

鸿蒙【基础+实战项目】视频

鸿蒙面经

在这里插入图片描述

为了避免大家在学习过程中产生更多的时间成本,对比我把以上内容全部放在了↓↓↓想要的可以自拿喔!谢谢大家观看!

http://www.yayakq.cn/news/428222/

相关文章:

  • 大气的网站源码网站开发支付宝二维码支付
  • 做网站入门看什么书亚马逊seo搜索什么意思
  • 运营网站是多少河源哪有做网站
  • 中国十大购物网站网站书店建设背景
  • 如何选择制作网站公司无锡网站制作服务
  • 无法登陆建设银行网站织梦怎么做网站
  • 企业网站建设中期报告模板软件定制开发如何做
  • 个人做盈利网站中信建设有限责任公司中标项目
  • 工作室网站源码网站新域名查询
  • 沧州市网站建设网页页脚模板
  • 网站首页有被收录就是最近没有被抓取是怎么回事建筑装饰公司简介模板
  • 汉口网站关键词排名小米网站设计
  • 简述电子商务网站建设的基本要求6网站下载app免费
  • 单页网站模板 带在线订单网站建设石家庄市
  • 网站动态背景怎么做网络防御中心
  • 网站空间送域名重庆网站seo方法
  • 最近新闻热点事件医院网站优化策划
  • 上海卖房网站网络营销文案策划都有哪些
  • 网站建设 兼职网站模板下载网站
  • 做神马网站优化快网站后台改变图片尺寸
  • 网站的设计 更新一个企业做网站推广的优势
  • 网站建设教程实训心得财务软件做账流程
  • 网站建设要如何选择权威的扬中网站建设
  • 学校网站建设招标济南官网排名推广
  • 网站建站工作室电商网站开发流程代码
  • 为学校网站做网站推广策划公司网站域名价格
  • 嘉兴有能做网站优化广州50强外贸公司排名
  • 黄岛外贸网站建设六安seo报价
  • 大学什么专业是学网站开发的海口免费网站建站模板
  • 网站开发背景设置在线推广