您好,我试图通过 flutter 来获得汽车的加速和减速,而且我正在使用userAccelerometerEvent来减去重力,但是,在事件下我得到了错误

1)我想知道如何使用 flutter 来测量加速度和减速度。
2)为什么我使用userAccelerometerEvent时会出现错误

    @override
  void initState() {
    super.initState();

    userAccelerometerEvents.listen((UserAccelerometerEvent event) {
      if (event() >= 2 && event() < 5) {
        print('Between 2 and 5');
      }
      if (event() >= 10 ) {
        print('Greater Than 10');
      }
    });

最佳答案

您看到什么错误?

看起来您正在使用Flutter的sensors包,自述文件位于此处,描述了如何侦听不同的传感器更改:README

查看您的代码,看起来您正在使用event参数作为event()方法。 event参数是具有属性UserAccelerometerEventxyz对象。您应该通过执行以下操作来访问x,y和z值:event.xevent.yevent.z

flutter 团队在此处提供了一些有关如何使用传感器包的示例代码:Sample Code

以下示例页面中的一些相关代码。

  void initState() {
    super.initState();
    _streamSubscriptions
        .add(userAccelerometerEvents.listen((UserAccelerometerEvent event) {
      setState(() {
        _userAccelerometerValues = <double>[event.x, event.y, event.z];
      });
    }));
  }

10-07 19:30
查看更多