Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[#8] 기본 다이얼로그 추가 #32

Merged
merged 5 commits into from
Apr 26, 2022
Merged

Conversation

ethan-223
Copy link
Collaborator

내용

  • 앱 전역에서 사용될 다이얼로그의 Base 를 작성해둡니다.
  • 원래 공통된 디자인 가이드가 있어서 이를 작성해두려고 했으나, MVP 수정 중 대부분이 사라지고 남은 다이얼로그는 각각 디자인이 상이해서 Base 만을 남겨둡니다.

작업 사항

  • 다른 공통 다이얼로그가 없는 상태에서 BaseDialogFragment 네이밍은 의미가 없을 것 같아서 RoundDialogFragment 로 명명하였습니다.
  • onPause 시 다이얼로그가 닫혀야하는 경우, setDismissOnPause(true) 자식 프래그먼트에서 를 호출해야합니다.
    • 구성이 변경되거나 (가로모드, 다크모드는 지원하지 않으나 언어 변경, 폴더블 폰 열고 닫음 등) 앱이 백그라운드에서 종료된 경우, 다시 실행하면 나머지 데이터는 복구되는 편이지만 클릭 리스너는 복구되지 않습니다.
    • 따라서 사용자의 선택이 중요하거나 선택으로 복잡한 로직을 수행하는 경우에는 그냥 onPause 시 닫히도록 하는 게 좋습니다. 이럴 때 사용합니다.
    • isCancelable 이 true 인 경우에만 동작합니다. (뒤로 가기로 다이얼로그를 닫을 수 없는데 백그라운드로 보내면 닫히면, 이상하잖아요 ?)
  • 디자인 가이드는 제각각이지만 .. 그나마 공통되는 것으로 보이는 건 스타일로 미리 정의해뒀습니다.
    • 필요한 다이얼로그 생성 시, 이 스타일을 조금씩 튜닝해서 사용하는 게 좋을 것 같습니다.
  • 참고로 Dialog 레이아웃 생성 시, FrameLayout 으로 한 번 감싸야합니다. 그러지 않으면 가로 길이가 wrap 돼요. (이유는 알았지만 까먹음)
  • 다이얼로그를 띄우는데 필요한 확장함수도 Fragment 랑 Activity 에 각각 추가해뒀읍니다.

변경 전 VS 변경 후

변경 전 변경 후

참고

#8

- 공통적으로 가져야할 속성들을 설정한 BaseDialogFragment 추가
- 함께 필요한 확장함수들 추가
- 타이틀과 하단 버튼만을 구성하고 있는 CustomContentDialogFragment 추가
- 각종 레이아웃 및 drawable 추가
- 테마로 중복코드 해소
- Content 로 텍스트만을 보여주는 TextConfirmDialogFragment 추가
- Fragment 를 띄우기 위한 확장함수 추가
- 디자인 가이드 변경으로 CustomContentDialogFragment, RoundDialogFragment 제거
- 해당 공용 다이얼로그 없이는 BaseDialogFragment 명칭이 애매해지므로 RoundDialogFragment 로 수정
- 버튼 스타일 수정 (배경 X, 글자 색 수정)
- 기타 불필요해진 파일 및 코드 제거
@ethan-223 ethan-223 added the feature 새로운 기능 label Apr 19, 2022
@ethan-223 ethan-223 added this to the v1.0.0 milestone Apr 19, 2022
@ethan-223 ethan-223 self-assigned this Apr 19, 2022
Copy link
Collaborator

@heechokim heechokim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

다이얼로그 잘 나오네요 ㅎㅎ 수고하셨습니다~

@ethan-223 ethan-223 merged commit 09a01eb into develop Apr 26, 2022
@ethan-223 ethan-223 deleted the feature/common-dialog branch April 26, 2022 14:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature 새로운 기능
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants