首页 > 解决方案 > 如何用 Flutter 让手机长按振动?

问题描述

有没有办法让手机在到达onLongPress“计时器”时振动?

例如:

1-有一个项目列表

2-我按住一个项目进行“长按”

3- 当到达onLongPress“定时器”时,我希望手机稍微振动一下。

可行吗?

谢谢

标签: flutterdarthardware

解决方案


例如,您可以将要长按的小部件(项目)包装起来GestureDetector,结果如下:

class MyVibrateButton extends StatelessWidget {

  @override
  Widget build(BuildContext context) {
    return Center(
      child: GestureDetector(
        onLongPress: () => HapticFeedback.vibrate(),
        child: Container(
          alignment: Alignment.center,
          decoration: BoxDecoration(border: Border.all(width: 2.0)),
          width: 100.0,
          height: 50.0,
          child: Text(
            'My Item\nPress me',
            textAlign: TextAlign.center,
          ),
        ),
      ),
    );
  }
}

编辑:我刚刚发现您可以使用包含类的 Flutter 包含services.dart的包,HapticFeedback该类允许您在两个平台上触发不同的本机触觉反馈。对于此示例,您可以使用该vibrate()方法。由于您希望它稍微振动一下,您可能还想尝试lightImpact()mediumImpact() 。我已经相应地编辑了我之前的答案。


推荐阅读