как управлять строкой списка, чтобы сделать условие - PullRequest
2 голосов
/ 05 марта 2019

Здравствуйте, я попытался сделать действие, если у меня есть _accelerometerValuesx> значение но когда я использую символ, например>, но у меня есть такая проблема: оператор ">" не определен, это список классов

пример:

if ( _accelerometerValuesx >= 2.0){
      //action
    }

мой код:

  List<double> _accelerometerValuesx;
  List<StreamSubscription<dynamic>> _streamSubscriptions =
  <StreamSubscription<dynamic>>[];

  @override
  Widget build(BuildContext context) {
    final List<String> accelerometerx =
    _accelerometerValuesx?.map((double v) => v.toStringAsFixed(1))?.toList();

    return Scaffold(
      appBar: AppBar(
        title: const Text('Sensor Example'),
      ),
      body: Column(
        mainAxisAlignment: MainAxisAlignment.spaceEvenly,
        children: <Widget>[
          Padding(
            child: Column(
              mainAxisAlignment: MainAxisAlignment.spaceBetween,
              children: <Widget>[
                Text('Accelerometerx: $accelerometerx'),
              ],
            ),
            padding: const EdgeInsets.all(16.0),
          ),
        ],
      ),
    );
  }

   @override
  void initState() {
    super.initState();
        _streamSubscriptions
        .add(accelerometerEvents.listen((AccelerometerEvent event) {
      setState(() {
        _accelerometerValuesx = <double>[event.x];
      });
    }));
  }

1 Ответ

1 голос
/ 05 марта 2019

Вам нужно выбрать определенный элемент из списка

if ( _accelerometerValuesx[0] >= 2.0){
  //action
}

, где _accelerometerValuesx[0] читает первую запись списка _accelerometerValuesx и сравнивает ее с 2.0

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...