본문 바로가기

카테고리 없음

[Flutter.250319] 이상한 키보드 에러를 발견하여 고쳐야한다

애플리케이션의 사용자 권한에는 현재 세 종류가 있다: 멤버, 코치, 어드민. 물론 영어로 해 뒀다. member, coach, admin 이렇게.

 

보통 멤버 권한으로 앱을 사용하고, 매일 바뀌는 운동 등을 작성하고, 수정하고, 회원 기록을 입력하고 하는거는 coach, 아니면 admin이 해야한다. 

 

member는 그냥 게시된 글을 보기만 할 수 있으니 수정할 일이 없다. 작성할 일도 없고.

어느날 admin 권한을 넣어서 앱 내용을 좀 채워보려 했더니, 키보드가 등장하면서 화면의 90%를 먹어버리는 것을 발견하였다.

이런 예상치 못한 변이 있나.

 

에러 1.

 글을 작성하는 페이지에서 키보드가 등장하면 이렇게 가려져 버리는 것이다.

 

이러한 에러를 사전에 발견하지 못한 이유가 있다.

에뮬레이터로 테스트하면서 개발할 때, 하드웨어 키보드 연결 옵션에 체크해두고, 편리하게 이리 저리 작성해 보기만 했었다. 키보드 등장할 때 이런 상황이 펼쳐질 줄이야..

 

이런,,

 

ㅜㅜ

 

body 파트를 SingleChildScrollView로 감싸줬다.

그랬더니 해결이 되었다.

 

크흡...

 

 

진작에 이렇게 되었어야 했다.

끝... 

 

이라기엔,, 또 뭔가를 발견했다. 

 

스크롤이 너무 많이 된다.

 

에러2.

내가 생각하는 스크롤의 한계 앱이 도달하는 스크롤의 한계

 

이럴수가..

 

흠,.., 사실 내비둬도 되지만, 또 막상 이러한 에러를 발견하니 고치지 않을 수가 없는 것이다.

이것은 마치, 화장실에 갔다가 볼일을 보고 손을 씻으려는데 비누가 없어서, 그래서 물로만 씻고 바지에 물 뭍은 손을 닦고 화장실을 나서는 그런 찝찝함이랄까...

 

그래서 중요한 것은 화장실에는 비누가 꼭 비치되어 있어야 한다는 것이다.

 

이거는 어떻게 스크롤 한계를 정하지? 찾아봐야겠다. 

 

찾아보니 ConstrainedBox 라는 기능이 있어서 이걸 사용해 보았다. 그냥 뭐 찾아볼 것도 없는게, 이름 자체가 기능을 말해준다. 

 

 

이렇게 수정하니, 불필요한 여백이 없어지고, 딱 내가 원하는 만큼의 스크롤까지만 조절해 줄 수 있었다. 

 

 

뿌듯!