鸿蒙:使用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高度占满父容器(屏幕)
  }
}

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

相关推荐
KevinChaos5 小时前
灶台菜谱设计手记 02|HarmonyOS 7.0 空间化:菜图滚动实现
harmonyos
独隅6 小时前
HarmonyOS 全场景智能应用落地指南
华为·harmonyos·harmonyos 7.0
熊猫钓鱼>_>6 小时前
鸿蒙PC构建实战:hvigor modelVersion 降级 + schema 清理 + ArkTS 编译三连坑完整复盘
开发语言·华为·ai编程·harmonyos·openharmony·数据·ai生成
2601_949970696 小时前
开源鸿蒙平台 CMP 三方库「SaltUI」适配全流程
华为·开源·harmonyos
马剑威(威哥爱编程)6 小时前
【HarmonyOS 7 小艺智能体实战】06:VibeCoding 十分钟搓出一个 Skill(上)——从想法到生成
人工智能·华为·harmonyos
马剑威(威哥爱编程)7 小时前
【HarmonyOS 7 小艺智能体实战】07:手写一个 Skill(下)——ArkTS、意图框架与工程结构
人工智能·华为·harmonyos
贾伟康9 小时前
【健康菜谱助手|08】HarmonyOS ArkTS 食材百科实战:实现分类、检索和详情跳转
软件测试·移动开发·harmonyos·arkts·arkui
哦***79 小时前
一开降噪耳朵就闷?耳机有耳压感是怎么回事?
华为·音频·harmonyos
马剑威(威哥爱编程)10 小时前
【HarmonyOS 7 小艺智能体实战】10:提交、审核、上架与上线后——把服务真正交给用户
人工智能·华为·harmonyos
马剑威(威哥爱编程)10 小时前
【HarmonyOS 7 小艺智能体实战】08:在真机上把它跑起来——调试与预览
人工智能·华为·harmonyos