context

프랭크 IT·2023년 10월 15일
0

flutter

목록 보기
24/28

Flutter에서 BuildContext 타입의 context는 위젯 트리에서 현재 위젯의 위치를 나타내는 객체입니다. 이 context는 여러가지 용도로 사용되며, 다음과 같은 주요 기능을 가집니다:

  1. Navigator: 페이지 라우팅을 할 때 Navigator를 사용하려면 context가 필요합니다. 예를 들어, 새로운 페이지로 이동하거나 현재 페이지를 닫을 때입니다.

    Navigator.push(context, MaterialPageRoute(builder: (context) => NewPage()));
  2. Theme: context를 통해 앱의 테마 데이터에 접근할 수 있습니다.

    Theme.of(context).primaryColor
  3. Scaffold: context를 사용하여 현재 Scaffold 위젯에 접근할 수 있습니다. 이를 통해 스낵바를 표시하거나 드로어를 열 수 있습니다.

    ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('Hello')));
  4. InheritedWidget: context를 통해 상위 위젯에서 공유하는 데이터에 접근할 수 있습니다.

    MyInheritedWidget.of(context).someData
  5. MediaQuery: context를 통해 디바이스 화면의 정보에 접근할 수 있습니다.

    MediaQuery.of(context).size.width
  6. Localization: 다국어 지원을 위해 context를 사용하여 현재 로케일 정보에 접근할 수 있습니다.

    Localizations.localeOf(context).languageCode

이러한 기능들은 위젯 트리의 현재 위치(context)를 알아야만 사용할 수 있기 때문에, context는 Flutter 개발에서 중요한 역할을 합니다.

profile
AWS, Vue, Java, flutter, Mongodb, Python, Git , EKS, Docker, 독서, 영어, 에어로빅, 자전거, 농구, 바둑, 풋살, 복싱, Guitar, 글쓰기, 랭체인

0개의 댓글