纯血鸿蒙来画龙!基于HarmonyOS ArkTS来操作SVG图片

这篇具有很好参考价值的文章主要介绍了纯血鸿蒙来画龙!基于HarmonyOS ArkTS来操作SVG图片。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

大家好,龙年报喜,大地回春,作为程序员,以代码之名,表达对于龙年的祝福。本节将演示如何在基于HarmonyOS ArkTS的Image组件来实现画一条中国龙,祝大家“码”上“鸿”福到!

本文涉及的所有源码,均可以在文末链接中找到。

创建应用

选择空模板。

纯血鸿蒙来画龙!基于HarmonyOS ArkTS来操作SVG图片,HarmonyOS,harmonyos,华为,鸿蒙,Harmonyos next,harmonyos next

创建名为ArkTSSVGChineseLoong的HarmonyOS应用。

纯血鸿蒙来画龙!基于HarmonyOS ArkTS来操作SVG图片,HarmonyOS,harmonyos,华为,鸿蒙,Harmonyos next,harmonyos next

核心代码讲解

首先是准备SVG图片资源chineseloong.svg,放置media目录下。图片是这样的

纯血鸿蒙来画龙!基于HarmonyOS ArkTS来操作SVG图片,HarmonyOS,harmonyos,华为,鸿蒙,Harmonyos next,harmonyos next

主页Index.ets 主要是使用了Image来实现SVG图片显示。

代码如下:

@Entry
@Component
struct Index {
  @State message: string = '画龙迎春,“码”上“鸿”福到';

  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(26)
          .fontWeight(FontWeight.Bold)
        Image($r('app.media.chineseloong'))
          .height(390)
          .width(330)
      }
      .width('100%')
    }
    .height('100%')
  }
}复制

当然,此时的龙,还是一条睡着的黑龙,效果如下:

纯血鸿蒙来画龙!基于HarmonyOS ArkTS来操作SVG图片,HarmonyOS,harmonyos,华为,鸿蒙,Harmonyos next,harmonyos next

如何来唤醒呢?可以加个按钮事件。

Button('画龙')
          .onClick(()=>{            // 点击变化颜色
            if (this.fillColor == Color.Black) {              this.fillColor = Color.Red;
            } else if (this.fillColor == Color.Red) {            this.fillColor = Color.Blue;
            }else if (this.fillColor == Color.Blue) {              this.fillColor = Color.Orange;
            }else if (this.fillColor == Color.Orange) {              this.fillColor = Color.Pink;
            }else if (this.fillColor == Color.Pink) {              this.fillColor = Color.Black;
            }
          })复制

上述按钮事件,实现了颜色的切换。

其中fillColor是一个颜色变量,默认是黑色。

@State fillColor: Color = Color.Black;复制

我们把fillColor变量赋值到Image组件上。

Image($r('app.media.chineseloong'))
          .height(390)
          .width(330)
          .fillColor(this.fillColor)复制

效果演示

纯血鸿蒙来画龙!基于HarmonyOS ArkTS来操作SVG图片,HarmonyOS,harmonyos,华为,鸿蒙,Harmonyos next,harmonyos next

B站视频:【老卫搬砖】042期:纯血鸿蒙来画龙!基于HarmonyOS ArkTS来操作SVG图片_哔哩哔哩_bilibili

源码

见:GitHub - waylau/harmonyos-tutorial: HarmonyOS Tutorial. 《跟老卫学HarmonyOS开发》文章来源地址https://www.toymoban.com/news/detail-835387.html

到了这里,关于纯血鸿蒙来画龙!基于HarmonyOS ArkTS来操作SVG图片的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • HarmonyOS鸿蒙开发指南:基于ArkTS的声明式开发范式 声明式UI开发实例 绘图与动画

    目录 绘制图形 绘制基本几何图形 绘制自定义几何图形 animateTo实现闪屏动画 页面转场动画 绘制能力主要是通过框架提供的绘制组件来支撑,支持svg标准绘制命令。 本节主要学习如何使用绘制组件,绘制详情页食物成分标签(基本几何图形)和应用Logo(自定义图形)。

    2024年01月17日
    浏览(66)
  • HarmonyOS鸿蒙开发指南:基于ArkTS开发 轻量级智能穿戴 体验应用、构建布局、绘制样式​​​​​​​和交互事件

    目录 体验应用 构建布局 绘制样式​​​​​​​ 交互事件 HelloWorld工程目录如下图所示: 图1  目录结构 pages/index/index.hml

    2024年02月01日
    浏览(56)
  • HarmonyOS鸿蒙开发指南:UI开发 基于ArkTS的声明式开发范式 声明式UI开发实例 页面布局与连接

    目录 构建食物数据模型 构建食物列表List布局 构建食物分类Grid布局  页面跳转与数据传递

    2024年02月03日
    浏览(58)
  • 鸿蒙HarmonyOS(ArkTS)语法数据类型

    上文 鸿蒙HarmonyOS(ArkTS)语法 声明变量及注意事项 我们简述了变量声明的几种形式 那么 今天我们就来说说数据类型 上文我们也说过 ArkTS 是ts的优化版 那么 我们数据类型大部分是跟着TS走的 number 数字类型 声明变量为一个数值 js中的 number 即可是正数也可以是小数 0 又或者 负

    2024年02月05日
    浏览(45)
  • 鸿蒙HarmonyOS实战-ArkTS语言(基本语法)

    🔎1.简介 HarmonyOS的ArkTS语言是一种基于TypeScript开发的语言,它专为HarmonyOS系统开发而设计。ArkTS语言结合了JavaScript的灵活性和TypeScript的严谨性,使得开发者能够快速、高效地开发出高质量的HarmonyOS应用程序。 ArkTS语言具有以下特点: 静态类型检查:开发者在编写代码时可以

    2024年01月18日
    浏览(58)
  • HarmonyOS鸿蒙学习基础篇 - ArkTs介绍

    概述     ArkTS 是 Harmenyos优选的主力应用开发语言,它是一种基于TypeScript(简称TS)的应用开发语言,由华为开发。它在保持TS基本语法风格的基础上,对TS的动态类型特性施加更严格的约束,引入静态类型。同时,ArkTS提供了声明式UI、状态管理等相应的能力,让开发者可以

    2024年01月22日
    浏览(47)
  • 【鸿蒙4.0】详解harmonyos开发语言ArkTS

    如官方文档所描述,ArkTS是基于Javascript以及Typescript的生态上做了进一步的扩展,进一步的提高开发效率,使用过低代码开发的老师应该会有一种感觉ArkTS像低代码一样更简洁,几行代码就能实现一个功能。以开发者的角度肯定是越简洁越好。下面来浅浅的了解一下js,ts以及

    2024年01月22日
    浏览(76)
  • HarmonyOS鸿蒙ArkTS,封装http网络请求

    要想使用http请求,系统必须要具备ohos.permission.INTERNET权限,在model.json5文件中的module模块下添加如下请求权限: 在module.json5文件中 配置 在文件中定义,文件目录自定义 至此整个请求封装结束

    2024年02月20日
    浏览(60)
  • 【鸿蒙(HarmonyOS)】UI开发的两种范式:ArkTS、JS(以登录界面开发为例进行对比)

    之后关于HarmonyOS技术的分享,将会持续使用到以下版本 HarmonyOS:3.1/4.0 SDK:API 9 Release Node.js:v14.20.1 DevEco Studio: 3.1.0 HarmonyOS应用的UI开发依赖于 方舟开发框架(简称ArkUI) 。 根据官方介绍,ArkUI提供了UI语法、丰富的UI功能(组件、布局、动画以及交互事件),以及实时界面

    2024年02月08日
    浏览(68)
  • 半小时实现GPT纯血鸿蒙版

    仅需半小时,即可实现纯血鸿蒙版本的ChatGPT! 废话少说,先看效果图: 如上图所示,这个小Demo实现了AI智能问答。靠右加粗的文本是用户点击底部提交按钮后出现的;后面靠左对齐的普通文本是来自AI的回答内容。当然,整个内容是可滑动浏览的,当内容被滑动时,屏幕右

    2024年01月22日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包