[flutter] BottomSheet에서 현재 위치 정보 받아오는 방법

안녕하세요! 이번 포스트에서는 Flutter 앱에서 BottomSheet를 사용하여 현재 위치 정보를 받아오는 방법에 대해 알아보겠습니다.

BottomSheet란 무엇인가요?

BottomSheet는 화면의 하단에 펼쳐지는 시트로, 추가 정보나 작업을 사용자에게 제공하는 데에 유용합니다.

Geolocator 패키지를 이용한 현재 위치 정보 받아오기

먼저, 현재 위치 정보를 받아오기 위해 geolocator 패키지를 사용하겠습니다. 이 패키지는 위치 정보를 받아오고 관리하는 데에 도움이 됩니다.

import 'package:geolocator/geolocator.dart';

Position _currentPosition;

void _getCurrentLocation() {
  Geolocator.getCurrentPosition(desiredAccuracy: LocationAccuracy.best)
      .then((Position position) {
    setState(() {
      _currentPosition = position;
      print(_currentPosition.latitude);
      print(_currentPosition.longitude);
    });
  }).catchError((e) {
    print(e);
  });
}

위 예제는 geolocator 패키지를 사용하여 현재 위치 정보를 받아오는 간단한 방법을 보여줍니다.

BottomSheet에 위치 정보 표시하기

얻은 위치 정보를 BottomSheet에 표시하기 위해 아래와 같이 코드를 작성할 수 있습니다.

void _showBottomSheet(BuildContext context) {
  showModalBottomSheet(
      context: context,
      builder: (BuildContext ctx) {
        return Container(
          child: Padding(
            padding: const EdgeInsets.all(16.0),
            child: Text('현재 위치: ${_currentPosition.latitude}, ${_currentPosition.longitude}'),
          ),
        );
      });
}

위 코드는 BottomSheet를 표시하고, 받아온 위치 정보를 텍스트로 표시하는 예제입니다.

_showBottomSheet 함수를 호출하여 BottomSheet에 위치 정보를 표시할 수 있습니다.

이제 당신의 Flutter 앱에서 BottomSheet를 사용하여 현재 위치 정보를 받아오고 표시하는 방법을 알게 되었습니다!

더 많은 정보를 원하시면 geolocator 패키지 문서를 참고하세요.