본문 바로가기

소프트웨어 /Flutter

[Flutter] Dialog Navigator.pop()이 적용되지 않을 때

반응형

flutter에서 showDialog로 다이얼로그를 만들었다.

 

다이얼로그에서 확인 버튼을 누르고 다이얼로그 창을 빠져 나와야 하는데 그때 보통

 

Navigator.of(context).pop();

 

이걸 사용한다.

 

근데 다이얼로그가 종료되는 것이 아니라 다이얼로그 아래 깔린 화면이 종료되는 현상이 발생했다.

 

 

그럴 땐 아래와 같은 방식으로 종료해주면 된다.

 

Navigator.of(context, rootNavigator: true).pop();

 

Dialog를 사용할 때 여러 navigator가 있는 경우 다이얼로그가 rootNavigator의 child이지 않아 발생한 오류같다.

rootNavigator = true를 이용하여 바꿔주면 된다.