과정 스킵 Navigator를 여러개를 쓰고있는 상태이다. 하위 Navigator에서 showDialog를 이용해 AlertDialog를 띄우는 상황에 action을 이용해 dialog와 dialog를 띄운 페이지를 pop을 하기위해 popUntil을 이용했다. (참고로 popUntil로 이동할 route의 이름은 route엔 존재하지 않음) 그리고 테스트를 하는데 화면이 갑자기 검게 변했다. 이 상태에서 핫 리로드를 수행해보면 아래와 같은 에러가 발생한다. 모든 화면이 pop되어 없는 상태여서 발생한 에러이다. context를 통해 가까운 Navigator를 찾아 pop을 한다면 발생하지 않을 에러인데 발생해 이해할 수 없었다. 하위 Navigator의 initialRoute가 루트와 달라 아래 코드..
Column위젯의 mainAxisSize의 값으로 MainAxisSize.min을 줘서 해결 참고 Flutter - Auto size AlertDialog to fit list content I need to load list cities dynamically from rest webservice and let user choice one city from alert dialog. My code: createDialog() { fetchCities().then((response) { showDialog( ... stackoverflow.com
AlertDialog 창 외부 화면을 눌러도 안꺼지게 막기 showDialog의 barrierDismissible 값을 false로 설정한다. 뒤로가기 버튼 막기 show dialog의 builder의 최상위 위젯을 뒤로가기 버튼에 대한 콜백을 설정할 수 있는 WillPopScope위젯으로 두고 onWillPop에 () async => false 콜백을 설정해 아무일도 일어나지 않게 함 둘 다 적용하면 아래와 같다. showDialog( context: context, barrierDismissible: false, builder: (context) { return WillPopScope( onWillPop: () async => false, child: AlertDialog( ... ), ); } ) ..