BuildContext
`BuildContext`는 Flutter 위젯 트리에서 위젯의 위치와 상태에 대한 정보를 제공하는 객체.
쉽게 말해, 현재 위젯이 위젯 트리 안에서 어디에 위치해 있는지 알려주는 역할을 한다.
- 위젯 트리를 따라 부모, 자식, 형제 위젯에 접근할 때 사용
- Theme, MediaQuery, Navigator 같은 상위 계층에 있는 데이터에 접근할 때 필요
`Navigator.pop`을 사용할 때 `context`를 인자로 넘겨줘야한다.
`mybutton`커스텀위젯은 `build`메서드 내부에 있는 위젯이 아니기 때문에 `context`에 접근을 할 수 없어 에러가 발생한다.
해결 방법은 2가지가 있다.
인자로 Context를 사용
- `myButton`을 호출 할 때 `build`메서드에 있는 `context`를 인자로 넘겨주면 해결 가능
Builder 위젯 사용
마무리
위 상황의 `StatelessWidget`에서만 해당되는 내용이다.
만약 `StatefulWidget`이면 `State`클래스의 `build`메서드 밖에 있는 메서드에 인자를 보내 사용하지 않고도 context에 바로 접근 할 수 있다.
'TIL(Today I Learned)' 카테고리의 다른 글
[TIL-023] Dart에서 json사용하기 (0) | 2025.04.10 |
---|---|
[TIL-022] Flutter 도대체 버튼 스타일링 어떻게 해야 하는거야? (0) | 2025.04.02 |
[TIL-020] Flutter로 기차 좌석 예매 어플 만들기-2 (0) | 2025.04.01 |
[TIL-019] Flutter로 기차 좌석 예매 어플 만들기-1 (0) | 2025.04.01 |
[TIL-018] Flutter의 AspectRatio위젯의 재발견 (0) | 2025.03.27 |