zoukankan      html  css  js  c++  java
  • 摇一摇检测

    import 'package:flutter/material.dart';
    import 'package:sensors/sensors.dart';
    import 'package:permission_handler/permission_handler.dart';
    import 'dart:async';
    import 'dart:math';
    
    main()=>runApp(MaterialApp(
      home: MyApp(),
    ));
    
    
    class MyApp extends StatefulWidget {
      @override
      State<StatefulWidget> createState() {
        // TODO: implement createState
        return MyAppState();
      }
    }
    class MyAppState extends State<MyApp> {
      int c = 0;
      bool isMove = false;
      bool permission = false;
    
      checkPermit()async{
        var permit = await PermissionHandler().checkPermissionStatus(PermissionGroup.sensors);
        if(permit != PermissionStatus.granted){
          await PermissionHandler().requestPermissions([PermissionGroup.sensors]);
        }else{
          permission = true;
        }
      }
    
      @override
      Widget build(BuildContext context) {
        if(!permission){
          checkPermit();
        }
    
        accelerometerEvents.listen((AccelerometerEvent v){
          var xx = sqrt(v.x*v.x + v.y*v.y + v.z*v.z);
          print('$xx');
          if(!isMove){
              if(xx>14.0){
                c = c + 1;
                isMove = true;
                setState(() {});
              }
          }else{
            if(xx<12){
              isMove = false;
            }
          }
        });
        return SafeArea(child: Scaffold(
          appBar: AppBar(),
          body: Container(child: Center(child: Text('Count: $c'),),),
        ));
      }
    }
    

      

  • 相关阅读:
    Documents
    gitlab 安装和配置
    git相关知识
    马俊龙ansible教程分享
    源码安装python 报错,openssl: error while loading shared libraries: libssl.so.1.1
    jumpserver 常见错误解决
    nginx 定义:响应头和请求头
    gcc入门(下)
    gcc入门(上)
    awk命令
  • 原文地址:https://www.cnblogs.com/pythonClub/p/10895692.html
Copyright © 2011-2022 走看看