鸿蒙:使用Rating组件实现五角星打分评价

1、前言

我们经常会在app上打分,在鸿蒙中可以使用Rating组件实现这一功能。

2、参考文档

https://developer.huawei.com/consumer/cn/doc/harmonyos-references/ts-basic-components-ratinghttps://developer.huawei.com/consumer/cn/doc/harmonyos-references/ts-basic-components-rating

3、核心代码

复制代码
        Rating({ rating: this.fiveRating, indicator: false })
            .stars(5) // 设置评分星星的总数为5颗
            .stepSize(0.5) // 设置评分的步长为0.5,即每次可增减0.5分
            .onChange((value: number) => { // 评分变化时的回调事件
              this.fiveRating = value;
            })

4、运行效果

5、完整代码

Index.ets

复制代码
@Entry
@ComponentV2
struct Index {
  // rating 用于存储当前评分值,初始化为3.5
  @Local fiveRating: number = 0;
  @Local tenRating: number = 0;

  // build方法是组件的UI构建入口,用于定义组件的布局和内容
  build() {
    // 外层Column布局:占满整个屏幕空间,作为根容器
    Column() {
      // 内层Column布局:设置固定宽高,用于容纳评分组件和文本显示
      Column({ space: 20 }) {

        Column({ space: 10 }) {
          Image($rawfile("pingguo.png"))
            .width("50%")
          Text("苹果:满分五分,你给------" + this.fiveRating + "分")
            .fontSize(20)

          Rating({ rating: this.fiveRating, indicator: false })
            .stars(5) // 设置评分星星的总数为5颗
            .stepSize(0.5) // 设置评分的步长为0.5,即每次可增减0.5分
            .onChange((value: number) => { // 评分变化时的回调事件
              this.fiveRating = value;
            })
        }

        Column({ space: 10 }) {
          Image($rawfile("huawei.jpg"))
            .width("50%")
          Text("华为:满分十分,你给------" + this.tenRating + "分")
            .fontSize(20)
          Rating({ rating: this.tenRating, indicator: false })
            .stars(10) // 设置评分星星的总数为5颗
            .stepSize(0.5) // 设置评分的步长为0.5,即每次可增减0.5分
            .onChange((value: number) => { // 评分变化时的回调事件
              this.tenRating = value;
            })
        }

      }

    }
    .width('100%') // 外层Column宽度占满父容器(屏幕)
    .height('100%') // 外层Column高度占满父容器(屏幕)
  }
}

觉得有帮助可以点赞或收藏

相关推荐
anyup18 小时前
🔥2026最推荐的跨平台方案:H5/小程序/App/鸿蒙,一套代码搞定
前端·uni-app·harmonyos
Ranger09291 天前
鸿蒙开发新范式:Gpui
rust·harmonyos
Huang兄1 天前
鸿蒙-深色模式适配
harmonyos·arkts·arkui
SummerKaze3 天前
为鸿蒙开发者写一个 nvm:hmvm 的设计与实现
harmonyos
在人间耕耘5 天前
HarmonyOS Vision Kit 视觉AI实战:把官方 Demo 改造成一套能长期复用的组件库
人工智能·深度学习·harmonyos
王码码20355 天前
Flutter for OpenHarmony:socket_io_client 实时通信的事实标准(Node.js 后端的最佳拍档) 深度解析与鸿蒙适配指南
android·flutter·ui·华为·node.js·harmonyos
HarmonyOS_SDK5 天前
【FAQ】HarmonyOS SDK 闭源开放能力 — Ads Kit
harmonyos
Swift社区5 天前
如何利用 ArkUI 框架优化鸿蒙应用的渲染性能
华为·harmonyos
特立独行的猫a5 天前
uni-app x跨平台开发实战:开发鸿蒙HarmonyOS影视票房榜组件完整实现过程
华为·uni-app·harmonyos·轮播图·uniapp-x
盐焗西兰花5 天前
鸿蒙学习实战之路-STG系列(5/11)-守护策略管理-添加与修改策略
服务器·学习·harmonyos