鸿蒙ArkTS中的image组件

开发文档很详尽,就在DevEco中的API参考,可以随时调出来进行学习。

在鸿蒙官网也有非常详尽的资料,地址:开发说明-API参考概述 - 华为HarmonyOS开发者 (huawei.com)

这里,就学习image组件的一般用法以及使用SVG图标和字体图标,使用SVG图标和字体图标在于图标放大与缩小不失真,可以随意变换颜色。

鸿蒙HarmonyOS NEXT中的image组件一般性用法:

**  1、图片使用网络地址**

复制代码
        Image('http://11.22.33.44/common/banner.jpg')
          .width(270).height(130)
          .onError((error) => {
            console.error('图片加载错误:', error);
            return Text('图片加载失败');
          })

这种方式涉及到跨越和网络访问权限,需要在module.json5中配置网络访问权限:

复制代码
"module": {
  "requestPermissions": [
    {
      "name": "ohos.permission.INTERNET"
    }
  ]
}

在"module"对象中中加入请求权限的属性。

这种方式不推荐使用。

**  2、使用本地图片**

在鸿蒙 ArkTS 中,"./" 表示当前目录,"../" 表示上一级目录。

① ./:表示当前目录。使用 ./ 时,意味着文件位于当前工作目录中。

② ../:表示上级目录。使用 ../ 时,意味着文件位于当前工作目录的上一级目录中。

如果不想遇到麻烦,可以将图形文件拷贝到media目录下再使用。

今天使用image组件遇到各种怪问题,加上预览刷新很慢,很耗时间。

**  3、使用svg格式图片**

可以使用华为的图标库下载对应的图标。

地址:HarmonyOS 主题图标库 | icon素材免费下载 | 华为开发者联盟 (huawei.com)https://developer.huawei.com/consumer/cn/design/harmonyos-icon/

复制代码
Image($r('app.media.ic_contacts_business_cards')).width(160).fillColor(Color.Red)
Image($r('app.media.ic_device_matebook_filled')).width(60).fillColor(Color.Blue)

**  4、使用字体图标**

可以使用阿里巴巴的字体图标。

地址:iconfont-阿里巴巴矢量图标库iconfont-国内功能很强大且图标内容很丰富的矢量图标库,提供矢量图标下载、在线存储、格式转换等功能。阿里巴巴体验团队倾力打造,设计和前端开发的便捷工具https://www.iconfont.cn/search/index?searchType=icon&q=%E9%80%89%E6%8B%A9&page=2&fromCollection=-1

⑴下载字体文件

⑵解压缩文件,将解压缩的文件复制到一个目录。

我在ets目录下新建了一个名为iconfont目录,将文件拷贝到了该目录下。

⑶注册字体

复制代码
    aboutToAppear(): void {
        //注册字体
        font.registerFont({
            familyName:'myfont',
            familySrc:'/iconfont/iconfont.ttf'
        })
    }

⑷使用字体图标

复制代码
Text('\ue613').fontFamily('myfont').fontSize(16).fontColor(Color.Red)

图片的大小通过设置字体大小来改变,颜色可以通过设置字体颜色来改变。

今天看了鸿蒙的参考文档,image有很多的用法,文档资料很全,但是也遇到了很多奇怪的问题,最主要的就是测试起来运行很慢,我尝试着修改配置效果也不明显。

还需要进一步的学习。

相关推荐
浮芷.27 分钟前
Flutter 框架跨平台鸿蒙开发 - AR动物互动应用
flutter·ar·harmonyos
加农炮手Jinx2 小时前
Flutter 组件 conventional 适配鸿蒙 HarmonyOS 实战:约定式提交标准,构建自动化版本治理与 CI/CD 质量治理架构
flutter·harmonyos·鸿蒙·openharmony
王码码20352 小时前
Flutter 三方库 appstream 的鸿蒙化适配指南 - 驾驭 Linux 生态元数据规范,打造高性能、标准化、国际化的 OpenHarmony 桌面应用商店分发基石
flutter·harmonyos·鸿蒙·openharmony
见山是山-见水是水2 小时前
Flutter 框架跨平台鸿蒙开发 - AR植物养护助手
flutter·华为·ar·harmonyos
autumn20053 小时前
Flutter 框架跨平台鸿蒙开发 - 历史人物对话
服务器·flutter·华为·harmonyos
autumn20053 小时前
Flutter 框架跨平台鸿蒙开发 - 社区闲置循环
flutter·华为·harmonyos
chenbin___3 小时前
在鸿蒙手机上,measure 和 measureInWindow 返回的 y / pageY 在滑动组件后值不变问题
华为·智能手机·harmonyos
浮芷.4 小时前
Flutter 框架跨平台鸿蒙开发 - 家庭健康监测云应用
科技·flutter·华为·harmonyos·鸿蒙
世人万千丶5 小时前
Flutter 框架跨平台鸿蒙开发 - 宠物语言翻译器应用
学习·flutter·华为·开源·harmonyos·鸿蒙
见山是山-见水是水5 小时前
Flutter 框架跨平台鸿蒙开发 - NPC模拟器
flutter·华为·harmonyos