말랑한 하루
[Flutter] (Project) MapleApp: 22. 예외 처리 작업-1 본문
반응형
테스트를 진행하면서 예외 처리 작업 시 겪었던 내용을 적어 내려가려 한다. 작업을 진행하기 전, 테스트 항목에 대해 모두 기술하고, 그것을 기반으로 진행하면서 차근차근 변경하려 한다.
🥕 정보가 입력되지 않았을 때, 검색을 클릭하는 경우 TextFiled로 포커싱
※ reference : https://docs.flutter.dev/cookbook/forms/focus
방법은 TextFiled에 autofocus 속성을 true로 설정하고, FocusNode class를 생성하는 것입니다. 그러면, 버튼을 클릭했을 대, FocusNode의 requestFocus method를 활용하여 강제로 TextFiled에 focusing할 수 있습니다. 자세한 예제는 reference를 참고해주세요.
🥕 페이지를 벗어났을 때, 텍스트 내 정보 삭제
간단하다! 우리는 TextFiled가 더 이상 필요하지 않기 때문에, textFiledController도 더 이상 사용하지 않는다. 때문에 controller의 dispose를 호출하여 사용하지 않는 모든 리소스를 삭제하면 된다!
@override
void dispose() {
_textFiledController.dispose();
super.dispose();
}
마찬가지로 새롭게 할당해 준 _focusNode도 dispose 시켜줍니다.
하지만 삭제되지 않았다. 그 이유는 context에서 push로 넘어갔기 때문이다. push method의 경우 routeStack에 해당 페이지 정보를 남겨 놓은 상태이므로 dispose가 되지 않는다. 따라서 go method를 활용해 페이지를 넘어 가주도록 하자.
반응형
'개발 > Flutter' 카테고리의 다른 글
[Flutter] (Project) MapleApp: 24. 예외 처리 작업-3 (0) | 2024.01.19 |
---|---|
[Flutter] (Project) MapleApp: 23. 예외 처리 작업-2 (0) | 2024.01.18 |
[Flutter] (Project) MapleApp: 21. Stat Page 제작-2 (0) | 2024.01.16 |
[Flutter] (Project) MapleApp: 20. Stat Page 제작-1 (0) | 2024.01.15 |
[Flutter] (Project) MapleApp: 19. Skill Page 제작 (0) | 2024.01.14 |
Comments