함께메뉴결정 탭 및 혼밥메뉴결정 탭의 미니게임 준비 화면을 보여줍니다.#4
Merged
yanghojoon merged 4 commits intodevelopfrom May 30, 2022
Merged
Conversation
- SoloMenuViewController 추가 - 탭바를 선택하면 MainTabBarController의 navigationBar title을 변경함
- 그룹 만들기를 탭했을 때 다음 화면을 띄울 수 있도록 Rx 적용
- SharePinNumberPageViewController 추가 - SharePinNumberPageViewModel 추가 및 Binding 구현 - pList의 URL identifier 및 Schemes 추가
- SharePinNumberActivityItemSource를 통해 ActivityView의 제목과 컨텐츠 지정
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
배경
함께메뉴결정탭의 경우, 사용자들을 그룹핑하여 추후 미니게임 결과를 합산하게 됩니다.그룹만들기버튼을 탭한 사용자가 해당 그룹의 Host가 되고, 공유하기 버튼을 통해 ActivityView를 띄우고 팀원들에게 간편하게 PIN 번호를 공유할 수 있습니다. Host가 아닌 팀원들은PIN으로 입장하기버튼을 탭하여 PIN 번호를 입력하고 그룹에 입장할 수 있습니다.혼밥메뉴결정탭의 경우, 미니게임을 혼자서 진행하므로 위 과정이 필요 없습니다.미니게임 시작버튼을 누르면 게임이 시작됩니다.작업 내용
1.
혼밥메뉴결정,함께메뉴결정탭 추가flowCoordinator를 통해 각 탭에 해당하는 ViewController를 생성한 후
MainTabBarController의 pages로 주입시켰습니다.2. ActivityView 내용 커스텀
ActivityView를 통해 PIN 번호를 공유할 때 Title과 Content를 커스텀하기 위해
UIActivityItemSource를 준수하는SharePinNumberActivityItemSource를 구현했습니다.ActivityView를 화면에 띄울 때에는, Rx를 활용하여
공유하기버튼을 눌렀을 경우 화면에 present할 수 있도록 했습니다.또한 아이패드의 지원을 위해 다음과 같은 코드를 추가했습니다.
ActivityView의 Title은 Host (PIN 번호를 공유하는 주체)가 확인할 수 있도록 "[우리뭐먹지] 팀원과 PIN 번호를 공유해보세요" 메세지를 나타내고, PIN 번호를 공유받는 팀원은 해당 앱을 실행하여 그룹에 입장할 수 있도록 "[우리뭐먹지] 팀원이 공유한 PIN 번호: 1111 / PIN 번호를 통해 입장하여 오늘의 메뉴를 골라보세요" 메세지를 나타냈습니다.
3. NavigationBar의 색상 변경
NavigationBar의 색상을 앱의 메인 색깔로 변경해주고자 했습니다.
초기에는 NavigationBar의
backgroundColor를 지정했을 때, 상단의 StatusBar 부분에는 색상이 적용되지 않는 문제가 발생했습니다.따라서 View의 backgroundColor를
ColorPalette.mainYellow로 변경해주고, SubView인 StackView의 backgroundColor를 white로 설정하여 문제를 해결했습니다.테스트 방법
리뷰 노트
즉시 앱을 실행하고 해당 그룹에 입장하도록 하는 기능이 UX 측면에서 유리할 것으로 판단했습니다. 하지만 앱을 다운받았으나 아직 실행하지 않았던 사용자는OnboardingPage를 확인할 수 없고,못먹는음식을 선택할 수 없다는 단점이 있어서 위 기능을 구현하지 않았습니다. 추후 보완이 가능하다면 위 기능을 구현하도록 변경할 수 있습니다.스크린샷