이전에 플러터 웹빌드가 ios 브라우저에서 키보드가 올라올때 텍스트 필드가 가려지는 문제가 있어서 삽질을 시작했음
플러터 공식 데모 https://gallery.flutter.dev/ 소스 뜯어보면서 연구해봤는데
플러터 웹 빌드 버전임에도 ios 브라우저에서도 완벽하게 작동하고 서술한 키보드 관련 문제가 없음 오히려 텍스트필드 종류에 따라 키보드 타입이 다르게 나오도록 구현함
알아낸 해결책은 정말 별거 없었는데 텍스트필드에 FocusNode을 연결하면 해결되었음
이것때매 ScrollController에 ScrollContoller연결해서 텍스트필드 탭할때 해당위치로 스크롤 되게 하려던짓은 뻘짓이 되어버렸음
텍스트필드가 있는 StatefulWidget의 State클래스에서 FocusNode필드를 late로 할당해주고
initState오버라이드 메소드에서 FocusNode를 생성해주고 생성된 FocusNode를 텍스트필드에 넣어주면 댐
물론 dispose할때 해당 FocusNode도 dispose 해주어야함
그래 킹갓 플러터가 안될리가 없지...
문제라면 안드로이드 브라우저에서는 포커스노드 없이도 잘 작동해서 포커스노드가 필요하다는 생각이 미치지 못했음
이거에 대한 자료가 정말 부족해서 결국 플러터 데모 뜯어보다 알아낸거라 다른 사람들도 도움이 되었음 좋겠네