-
Notifications
You must be signed in to change notification settings - Fork 33
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
[충남대 Android_전영주] 1단계 미션 제출합니다. #1
base: aengzu
Are you sure you want to change the base?
Conversation
aengzu
commented
Jun 26, 2024
•
edited
Loading
edited
- 1단계 XML 제작 및 연락처 추가 기능 완성하였습니다.
- XML 제작 시 아이폰 UI 보면서 했습니다.
- Added attribute: contacts (mutableListOf<Contact>) - Added methods: add, delete, and fetch contacts
- Added more options icon - Added default profile image - Added down arrow icon
- Added EditText for name with InputType text - Added EditText for phoneNum with InputType=number|phone - Added EditText for email with InputType=textEmailAddress - Added LinearLayout for moreButton and its icon - Added EditText for birthday with InputType=none and clickable=true (Visible=gone) - Added RadioGroup for gender(Visible=gone) - Added EditText for memo with inputType=textMultiLine and singleLine="false"(Visible=gone)
- Added moreButton setOnClickListener - Added findViewById
- Added saveButton clickListener - Added getSelectedRadioButton function - Added check function if name and phoneNum are not Empty. - Added ViewModel (액티비티 라이프사이클보다 연락처 데이터의 수명주기가 길어야해서) -Added saveContact function
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
마이너 한 변경사항 외에는
전반적으로 1차 과제 깔끔하게 잘 작성해주셨습니다.
고생하셨습니다!
val contact = Contact(name, phoneNum, email, birth, gender, memo) | ||
|
||
if (checkTerms(name, phoneNum)) { | ||
saveContact(contact) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
save이후에도 clearFields를 호출해서 초기화 시켜주는 것이 좋을 것 같습니다.
저장후에도 데이터가 남아있어 취소를 눌렀을때 저장이 취소 될 것 같은 느낌을 줍니다.
datePickerDialog.show() | ||
} | ||
|
||
private fun checkTerms(name: String, phoneNum: String): Boolean { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
checkTerms 함수는
-
이름과 번호를 체크하는기능
-
데이터가 충분하지 않을때 토스트를 띄우는 기능
이렇게 두가지 역할을 하고 있는데요
checkTerms을 사용하는 부분에서 false가 나왔을때 토스트를 띄우도록 하여 함수가 하나의 기능만 하도록 구현하면 더욱 좋을 것 같습니다.
} | ||
|
||
|
||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
실무에서는 indent를 중요하게 생각하고 lint라는 기능들을 사용하여 따로 체크를 하기도 합니다.
그 이유는 리뷰시 불필요한 라인 변경을 방지하여 리뷰의 효율을 높이기 위함인데요
커밋전에 Mac OS 기준 option + cmd + l 을 누르면 라인 정리가 되니 이후 과제에 참고 부탁드립니다!