onLongPress并使手机振动

时间:2018-12-28 15:14:28

标签: flutter

到达onLongPress“计时器”时,是否有办法使手机振动?

例如:

1-有一个项目列表 2-我按住一个项目以进行“长按” 3-当到达onLongPress“计时器”时,我希望手机振动一下。

可以吗?

谢谢

1 个答案:

答案 0 :(得分:1)

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

class MyVibrateButton extends StatelessWidget {

  @override
  Widget build(BuildContext context) {
    return Center(
      child: InkWell(
        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,
          ),
        ),
      ),
    );
  }
}

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