UI的图片或文本组件可以设置点击时附带震动吗?

功能场景描述及使用场景

在处理一个问题单时遇到一个场景,伙伴需要通过点击UI的图片或者文本组件能实现附带震动的效果,通过这个问题单我想探究是否有接口可以支持图片、组件以及按钮点击时触发震动效果。

阅读 466
1 个回答

核心代码解释

通过引入@ohos.vibrator (振动)这个模块,调用vibrator.startVibration方法可以支持在点击事件内产生震动,可以设置震动的时长以及震动的类型,不过想用这个接口,必须得先申请对应的ohos.permission.VIBRATE权限。

具体代码展示

import vibrator from '@ohos.vibrator';
import { BusinessError } from '@ohos.base';
@Entry
@Component
struct Page1 {


  build() {
    Flex({direction:FlexDirection.Column,
      justifyContent:FlexAlign.Center,
      alignItems:ItemAlign.Center}){
      Text('你好').width('90%').onClick(()=>{
        vibrator.startVibration({
          type:'time',
          duration:1000
        },{
          id:0,
          usage:'alarm'
        }, (error: BusinessError) => {
          if (error) {
            console.error(`Failed to start vibration. Code: ${error.code}, message: ${error.message}`);
            return;
          }
          console.info('Succeed in starting vibration');
        })
      })
    }
  }
}

适配的版本信息

IDE:DevEco Studio 4.0.3.600

SDK:HarmoneyOS 4.0.0.41

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进