섹션 6. 다이어트 메모 앱 만들기(3)-스플래시 화면 만들기
어떤 운동을 했는지 메모 목록이 있고,
글쓰기 아이콘을 클릭하면 날짜 선택, 그리고 메모를 남길 수 있는 앱을 만들어볼것이다.
사용할 기술은
1. Firebase Auth - uid (인증 기능)
2. Firebase Realtime Database (데이터베이스)
이렇게 두 가지 이다.
프로젝트 이름을 diet_memo 라고 만들어주자
제일 먼저, 스플래시 화면을 만들어주자.
스플래시 화면을 만드는 이유는 화면이 나오는 동안 지금 앱을 켠 사람의 회원/비회원 여부를 확인하기 위함이다.
로그인안했으면-자동로그인시켜주고
로그인했으면-바로 메모 남길 수 있도록.
먼저, 스플래시 액티비티를 만들자.
메인액티비티파일이 속해있는 파일 우클릭-NewActivity-Empty Activity
이름은 SplashActivity
그 다음 스플래시 액티비티 파일을 다음과 같이 작성해준다.
원래 그냥 Handler()를 썼는데 alt+enter로 임포트 하려니까 둘중 하나 골랐더니 저렇게 됐다.
스플래시 화면이 먼저 뜨게 하려면?
매니페스트 파일로 가서~
메인액티비티의 인텐트 필터 영역을 스플래시 액티비티의 activity 태그 안으로 옮겨준다!
이제 스플래시 다음과 같이 화면을 꾸며보자
배경 black으로 설정해주고~
gravity로 가운데에 오게 해주고
constraintLayout으로 감싸져 있으니까 텍스트뷰 테두리의 점을 parentLayout으로 옮겨서 위치 고정해주기
<오류노트
앱이 실행되지 않았다.
로그에는 다음과 같은 오류가 떴다.
java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
스타일을 아예 새로 만드는 게 해결방법이었다.(!!!!)
(이전의 트와이스 앱 만들기에서는 해결방법이 보이지 않아서 포기했었는데 감격스럽다. 다시 해봐야겠다.)
res 폴더의 values-themes.xml을 열어준다.
첨부한 블로그의 코드에서
주석 위의 코드를 <style> 태그에 넣어주고, 여기서 그대로 Run 하면 매니페스트에 빨간줄이 뜰 것이다.
테마 이름을 새로 바꾼 테마이름으로 바꿔주면 된다.
/>
스플래시 화면이 아주 잘 뜬다. 🥹