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

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

相关推荐
2401_8604947017 小时前
在React Native中实现鸿蒙跨平台开发中开发一个运动类型管理系统,使用React Navigation设置应用的导航结构,创建一个堆栈导航器
react native·react.js·harmonyos
hahjee17 小时前
diffutils文件对比:鸿蒙PC上的diff工具集
华为·harmonyos
2401_8603195218 小时前
react-native-calendarsReact Native库来帮助你处理日期和时间,实现鸿蒙跨平台开发日历组件
react native·react.js·harmonyos
赵财猫._.18 小时前
React Native鸿蒙开发实战(九):复杂业务场景实战与架构设计
react native·react.js·harmonyos
ifeng091818 小时前
uniapp开发鸿蒙:跨端兼容与条件编译实战
华为·uni-app·harmonyos
ifeng091818 小时前
uniapp开发鸿蒙:常见问题与踩坑指南
华为·uni-app·harmonyos
2401_8604947018 小时前
如何在React Native中实现鸿蒙跨平台开发任务列表页面在很多应用中都是一个常见的需求,比如待办事项列表、购物车列表等
react native·react.js·harmonyos
XHW___00118 小时前
鸿蒙webrtc编译
华为·webrtc·harmonyos
JY.yuyu18 小时前
华为VRP基础及操作
华为·智能路由器
JY.yuyu18 小时前
华为设备配置RIP,VLAN,MAC地址
网络·华为