为了账号安全,请及时绑定邮箱和手机立即绑定

HarmonyOS Next快速入门:Image组件

标签:
HarmonyOS

##HarmonyOS Next快速入门##HarmonyOS应用开发##教育##

Image组件用来渲染展示图片,它可以让界面变得更加丰富多彩。

例如:按钮中的icon、网络图片、本地图片等。在应用中显示图片需要使用Image组件实现,Image支持多种图片格式,包括png、jpg、bmp、svg、gif和heif。

Image组件数据源

  • 本地资源:存放在ets文件夹下,引用根目录ets文件夹下的资源路径即可。
  • Resource资源:通过$r资源接口读取并转换到Resource格式。
  • 网络资源:引用网络地址,需在module.json5文件中申明网络访问权限ohos.permission.INTERNET。
  • 媒体库file://data/storage。支持file://路径前缀的字符串,用于访问通过选择器提供的图片路径。
  • 多媒体像素图:PixelMap是图片解码后的像素图,将加载的网络图片返回的数据解码成PixelMap格式,再显示在Image组件上。

图片地址:https://imagepphcloud.thepaper.cn/pph/image/208/499/752.jpg
在module.json5文件中申明网络访问权限:

{
    "module" : {
        "requestPermissions":[
           {
             "name": "ohos.permission.INTERNET"
           }
        ]
    }
}

Image组件可显示矢量图(svg格式的图片),使用fillColor属性改变图片的绘制颜色。

.fillColor(value: ResourceColor)

设置缩放类型:objectFit属性

.objectFit(value: ImageFit)

ImageFit枚举类型:

  • ImageFit.Contain:保持宽高比进行缩小或者放大,使得图片完全显示在显示边界内。
  • ImageFit.Cover(默认值):保持宽高比进行缩小或者放大,使得图片两边都大于或等于显示边界。
  • ImageFit.Auto:自适应显示。
  • ImageFit.Fill:不保持宽高比进行放大缩小,使得图片充满显示边界。
  • ImageFit.ScaleDown:保持宽高比显示,图片缩小或者保持不变。
  • ImageFit.None:保持原有尺寸显示。

代码实例:ImagePage

@Entry
@Component
struct ImagePage {
  @State message: string = 'Image组件';

  build() {
    Column({space:6}) {
      Text(this.message)
        .fontSize(30)
        .fontWeight(FontWeight.Bold)

      Image('images/panda.jpg').width(100)

      Image($r('app.media.cat')).width(100)
      Image($r('app.media.cat')).width(100).height(200).objectFit(ImageFit.Fill)

      Image('https://imagepphcloud.thepaper.cn/pph/image/208/499/752.jpg').width("100%")

      Image($r('app.media.add')).width(50).fillColor(Color.Blue)
    }
    .height('100%')
    .width('100%')
  }
}
点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

举报

0/150
提交
取消