이터널리턴 - openDrawer()
2023. 10. 28. 22:49ㆍ플러터
한동안은 이터널리턴 앱을 만들면서 필요하다 생각되는 부분들은 블로그에 올리면서 지내고자 한다.
목표도 만들었기에 바로 시작하겠다.
큰 틀 개발 도중 appbar에서 openDrawer()를 이용하여 햄버거 메뉴 아이콘 클릭 시
Scaffold.of(context).openDrawer()를 사용했으나, 에러가 생기게 되는데
찾아보게되니 위의 방식으로 사용하게 될 경우 scaffold 위젯을 못 찾아오게되어 생기는 에러라고 한다.
그렇기에 키값을 직접 주어 찾아올 수 있도록 만들어야 하는데 이 방법이
final scaffoldKey = GlobalKey<ScaffoldState>();
위의 변수를 전역변수로 빼서 사용하는 것이다.
이후 Scaffold.of(context)를
scaffoldKey.currentState
위의 코드로 변경하여 적어주면 동작하게 된다.
참고로 그냥 사용할 경우 빨간 줄이 나오게 되므로 State뒤에 ?를 적어주면 해결된다.
'플러터' 카테고리의 다른 글
디버그 리본 제거 (0) | 2023.10.29 |
---|---|
안드로이드 스튜디오 extract 단축키 (0) | 2023.10.28 |
이미지 관련 이슈 (0) | 2023.10.20 |
Row, Column과 mainaxisalignment, crossaxisalignment에 대해 (0) | 2023.10.16 |
픽셀 오버플로우 (0) | 2023.10.12 |