0
class _LoginPageState extends State<LoginPage> with WidgetsBindingObserver{

  PersistentBottomSheetController controller;
  final GlobalKey<ScaffoldState> _scaffoldKey = new GlobalKey<ScaffoldState>();

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

    requestPermission(Permission.location);
    getIdentifierState();
    WidgetsBinding.instance.addObserver(this);
  }

Future<void> requestPermission(Permission permission) async {
    final status = await permission.request();

    if(status != PermissionStatus.granted){
      _showModalBottomSheet(context);
    }else{
      // how close _showModalBottomSheet
      Position position = await Geolocator().getCurrentPosition(desiredAccuracy: LocationAccuracy.high);
      print(position.latitude);
      print(position.longitude);
      bloc.coordinate(position.latitude.toString() + position.longitude.toString());
    }
  }
ibhavikmakwana
  • 8,948
  • 4
  • 20
  • 39
Jsoon
  • 123
  • 4
  • 14

2 Answers2

0

When calling your method, pass the parameter context to be used during modal closing as follow:

Navigator.of(context).pop();

Hekmat
  • 588
  • 6
  • 19
0

within the sheet add a button with the following action

    ElevatedButton(onPressed: () {
                        Navigator.of(context).pop();
                      },)
Hisham Shami
  • 439
  • 4
  • 8