ImGaram / harmony_cafe

조화로운 조(6조) 팀 프로젝트 하모니 카페

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool




☕ 주요 기능

  • 다국어 지원
  • Light / Dark Theme 지원
  • Portrait / LandScape 화면 모드 지원
  • Toolbar를 이용해 화면 타이틀 표시 및 뒤로가기 구현
  • 직접 제작한 Lottie Animaton

🥯 살펴보기

로그인 화면 회원가입 화면 홈 화면
마이페이지 화면 메뉴 상세 화면



🍞 로그인


        

  • User Data 관리
    • User 인스턴스에 HashMap 형태로 저장
    • User 클래스는 Parcelable 상속
  • UserData 받아오기
    • 회원가입 직후 회원가입 화면에서 UserData를 전달 받아 HashMap에 저장
  • configChanges 관리
    • 화면 방향 전환 시 재시작 되어 회원가입 정보가 날아가는 현상을 방지



🧇 회원가입


        

  • Toolbar
    • 상단 타이틀 표시와 뒤로가기 구현
  • 유효성 검사
    • Regex를 이용하여 정규표현식을 작성하고 matches() 함수로 유효성 검사
  • 아이디 중복 체크
    • 로그인 화면에서 받아온 id의 key 값을 비교하여 중복 체크
    • 아이디를 중복체크 한 뒤 아이디 값을 바꿀 경우 다시 체크할 수 있도록 Listener 추가



🥐 홈 화면


        

  • 2개의 ScrollView 사용
    • 서로 다른 두 ScrollView를 동시에 처리
    • 화면 방향이 전환될 때 id 값을 다르게 지정함으로서 에러 해결
  • 카페 메뉴 순서 랜덤 노출
    • 여러 메뉴들을 랜덤으로 노출하고 랜덤 값에 따른 상세 페이지로 연결될 수 있도록 처리
  • 원형 ImageView 처리
    • drawble 폴더에 background 생성 후 처리
  • 더보기 활성화
    • TextViw가 긴 경우 ellipsize 처리 후 더보기 버튼을 눌러 전문 공개
  • UserData 관리
    • 로그인할 때 받아온 UserData를 사용하고 이를 다시 마이페이지로 전달



🥞 마이페이지


        

  • 원형 ImageView 처리
    • drawble 폴더에 background 생성 후 처리
  • 반응형 디자인 적용
    • 메뉴 이름이 길어질 경우 사용자 이름과 작성 날짜가 메뉴 아래에 오도록 구현
  • 더보기 활성화
    • TextView가 길어지는 경우 레이아웃에 맞게 줄어들고 더보기 버튼을 눌러 전문 공개
  • Menu Class 전역 관리
    • Menu 클래스는 Parcelable을 상속받아 전역으로 관리할 수 있게 처리



🥨 상세 화면


        

  • 원형 ImageView 처리
    • drawble 폴더에 background 생성 후 처리
  • UserData 관리
    • Intent를 통해 홈 화면에서 UserData를 받아와 사용자 정보를 노출
  • 사용자 프로필 랜덤 노출
    • 사용자의 프로필 사진만 모아놓은 list를 shuffled()를 사용해 랜덤 노출되도록 구현
  • 더보기 활성화
    • Text가 한 줄 이상일 경우 ellipsize를 처리하고, 텍스트를 클릭하면 maxLine이 최대 5줄까지 노출 될 수 있도록 처리
  • 메뉴 랜덤 노출
    • 메뉴 정보를 담은 string-array의 데이터를 랜덤으로 뽑아 하나 이상의 메뉴가 보이도록 구현
  • 네이버 지도로 연결
    • 암묵적 인텐트를 이용해 카페 지도를 크롬 화면으로 연결할 수 있도록 처리

👥 팀원

임가람 (리더) 김보라 김태영 송유호
  • Git 프로젝트 생성
  • Figma 와이어 프레임 작업
  • 마이페이지 구현
  • Figma 와이어 프레임 작업
  • 홈 화면 구현
  • 발표 자료 제작
  • Figma 와이어 프레임 작업
  • 상세 화면 구현
  • Github Readme 작성
  • Figma 와이어 프레임 작업
  • 로그인 화면 구현
  • 회원가입 화면 구현

🔧 기술 스택

💻 개발/협업 환경

About

조화로운 조(6조) 팀 프로젝트 하모니 카페


Languages

Language:Kotlin 100.0%