HarmonyOS 鸿蒙Next 鼠标悬浮图片上之后图片可以无限旋转

发布于 1周前 作者 wuwangju 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 鼠标悬浮图片上之后图片可以无限旋转 我有一个需求, 需要在鼠标悬浮在图片上之后, 图片开启无限旋转. 视觉效果类似:

想请问一下大佬, 这个的效果可以从哪些方面考虑着手?

鼠标事件悬浮及其离开? 图片如何进行旋转?


更多关于HarmonyOS 鸿蒙Next 鼠标悬浮图片上之后图片可以无限旋转的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

下面的代码可实现你的需求(注:移动设备不连接鼠标无法触发onHover事件,所以代码里加了onClick事件,单击一次开始旋转,再次单击停止旋转。)

Image($r('app.media.sickle'))
  .width(150)
  .height(150)
  .rotate({angle: this.rotateAngle})
  .animation({
    duration: 1500,
    curve: Curve.Linear,
    iterations: -1  // 设置动画无限循环
  })
  .onClick(() => {
    console.info('clicked.')
    this.rotateAngle = 360 - this.rotateAngle
  })
  .onHover((hovered: boolean) => {
    if (hovered) {
      // 鼠标悬浮时,设置图片的hover状态为true,触发旋转动画
      console.info('hovered')
      this.rotateAngle = 360;
    } else {
      // 鼠标离开时,设置图片的hover状态为false,可根据需要停止动画或恢复初始状态
      console.info('leaved')
      this.rotateAngle = 0;
    }
  })

旋转时截图。

相关文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-animatorproperty-V5

更多关于HarmonyOS 鸿蒙Next 鼠标悬浮图片上之后图片可以无限旋转的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS(鸿蒙)系统中,实现鼠标悬浮在图片上后图片可以无限旋转的效果,通常涉及到对UI组件的事件监听和动画处理。以下是一个简洁的实现思路:

  1. 事件监听:首先,需要为图片组件添加鼠标悬浮(如onMouseEnteronMouseMove)事件监听器。当用户将鼠标移动到图片上时,触发这些事件。

  2. 动画处理:在事件监听器中,启动一个旋转动画。这个动画应该是一个循环动画,以确保图片可以持续旋转。HarmonyOS提供了动画框架,可以用于创建和管理这种动画效果。

  3. 性能优化:为了确保动画流畅,可能需要考虑性能优化,比如使用硬件加速、减少动画的复杂度等。

  4. 停止动画:当用户将鼠标移开图片时(可以监听onMouseLeave事件),停止旋转动画。

实现时,可以查阅HarmonyOS的官方文档,了解如何具体实现事件监听和动画处理。这通常涉及到XML布局文件的配置和JavaScript(或其他支持的语言,如TypeScript)代码的编写。

请注意,上述回答是基于一般性的HarmonyOS开发知识,并未涉及具体的代码实现。如果在实际开发中遇到问题,建议查阅HarmonyOS的官方文档或示例代码,以获得更详细的指导。如果问题依旧没法解决请联系官网客服,官网地址是

回到顶部