(TIL) 2020-10-28 기록

업데이트:

오늘 한 일

  • 오늘은 로그인 화면을 만들었는데 이메일 형식 검증 등 쉬운 부분을 만들었다.
  • 그런데 사실 시간이 많이 걸린 부분이 어디였냐면 키보드가 올라올 때 키보드가 자칫 입력 필드를 덮을 수도 있는 문제 때문이었다. 사실 이건 되게 간단한 문젠데 여러가지 솔루션을 적용해봐도 안 통했다. 가장 대표적인 솔루션이 Scaffold로 root widget을 감싸는 방법, 그리고 화면 크기 자체를 viewInsets의 bottom에 반응하여 조절하는 방법이 있는데 둘 다 통하지 않았다.
  • 혹시 싶어서 viewInsets의 bottom을 화면을 탭할 때마다 출력하도록 했는데 키보드가 떠서 화면의 바닥이 변했는데도 계속 0.0이 뜨는 것이었다. 구글에 다시 검색해보니 android 소스코드의 style.xml 안에 fullscreen을 false로 해줘야 한단다. 이렇게 간단한 문제를 나는 무얼 했단 말인가 ㅜㅜ 정말 모레부터 개발에 박차를 가할 것이다.
  • 그리고 api 등록은 하지 않았다. 왜냐하면 기업 계정을 만들고 하는 게 좋을 것 같아서였다. 일단 이메일 계정을 만들어서 앱 테스트를 진행한 후 차후에 진행할 것이다.
  • 그리고 form validator 함수를 쓰지 않았다. 얘는 쓰게 되면 invalid한 입력이 들어오면 반드시 에러 메세지를 띄우고 에러 메세지가 없어도 필드 하단에 공간을 바꾸기 때문에 미관상 좋지 않았다. 그래서 커스텀 에러 메세지를 예쁘게 화면 상단에 띄워주고 validator 함수를 쓰는 대신 커스텀 validator 함수를 만들고 state에 입력 값을 저장해서 버튼을 클릭하거나 엔터를 치면 함수를 호출해서 검증한 다음 valid state를 변경하고 그에 따라 메세지가 뜨거나 없어지거나 하는 식으로 바꿨다.

모레 할 일

  • 사실 거의 못했기 때문에 오늘 할 일을 모레 해야 한다.
  • 소셜 로그인은 자체 api를 통해서 이루어지기 때문에 크게 문제될 것이 없으나 이메일 로그인은 우리가 직접 모든 걸 처리해야 하기 때문에 그것에 관한 로직을 만들 것이다.
  • Form validity 로직과 서버에서 이메일 체크하는 것을 만들고 이메일 인증, 비밀번호 찾기 기능은 모두 Firebase에서 지원하기 때문에 이를 구현할 것이다.
  • 위가 모두 완료되면 가입 정보 입력 스크린을 만들고 메인 스크린으로 드디어 넘어가게 된다. auth를 얻었지만 아직 가입 정보 화면은 없기 때문에 대충 만들어서 구현하고 다시 공개 보이스 녹음 화면으로 넘어가 관련 로직을 모두 완성하여 앱의 기틀을 완성해야 한다.

태그:

카테고리:

업데이트:

댓글남기기