-
Notifications
You must be signed in to change notification settings - Fork 0
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
[week7] level1 #6
base: main
Are you sure you want to change the base?
Conversation
visionWWW
commented
Dec 19, 2021
- 필수과제
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.
수고하셨습니다!
|
||
implementation "androidx.navigation:navigation-fragment-ktx:$nav_version" | ||
implementation "androidx.navigation:navigation-ui-ktx:$nav_version" | ||
implementation "androidx.navigation:navigation-compose:1.0.0-alpha01" |
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.
Compose라는 안드로이드의 새 UI 프레임워크에서만 사용할 수 있는 라이브러리에요, 굳이 의존성에 추가를 별도로 하시지 않아도됩니다.
def fragment_version = '1.2.0-rc04' | ||
def nav_version = "2.2.0-rc04" | ||
implementation "androidx.fragment:fragment-ktx:$fragment_version" | ||
implementation "androidx.fragment:fragment-testing:$fragment_version" |
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.
def fragment_version = '1.2.0-rc04' | ||
def nav_version = "2.2.0-rc04" |
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.
rc버전은 아직 출시 전에 마지막 점검차 내놓는 라이브러리여서 사용은 지양하는게 좋습니다.
// cotext 확장 | ||
fun Context.shortToast(message : String){ | ||
Toast.makeText(this, message, Toast.LENGTH_SHORT).show() | ||
// 이미 상속받아서 this를 쓸 수 있음. |
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.
상속이라기 보다는 Context의 멤버함수를 추가해준다고 생각할 수 있어요. 상속은 부모 클래스의 속성(멤버 변수와 함수)를 가지고 기능을 확장하는 "클래스"를 만든다는 개념이어서 둘이 다른 것이라고 보면 좋을 것 같습니다!
// mainActivity에 가서 어떻게 쓰냐... | ||
// shortToast("텍스트") 쓰면 됨. |
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.
Fragment에서는 context?.shortToast()나 requireContext().shortToast()로 사용해야해서 제가 위와 같은 확장함수를 만들때에는 Context/Fragment 둘 다 만드는 편이긴합니다.
private fun checkAutoLogin() { | ||
shortToast("자동로그인 되었습니다.") | ||
startActivity(Intent(this, HomeActivity::class.java)) | ||
finish() |
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.
이와 같은 방식으로 구현해도 홈액티비티를 종료했을 때 당연히 이 SignInActivity도 종료될텐데 그렇다면 HomeActivity가 떠있는 동안 화면 아래에 계속 남아있겠네요. 이걸 동일하게 화면이 다섯개 정도 겹쳐있으면 핸드폰의 기종에 따라서 메모리 부족 경고가 뜨거나 앱이 강제 종료될 수 있기 때문에 좋은 패턴이 아니라고 생각할 수 있습니다.