본문 바로가기
Android

[Java][Kotlin] 액티비티 전환하기

by 방구석 몽상가 2018. 10. 13.
2018-10-13-android-activity-change

프레그먼트에서 특정 액티비티로 전환되는 것을 한 번 해보자.

Fragment 생성은 Fragment 간단 사용법에서 이어서 진행해본다. 여기서는 이전 글에서 생성했던 로그인 버튼을 누르면 메인 액티비티로 전환되는 것을 살펴보겠다.

정말 간단하므로 로그인 버튼을 클릭하는 코드만 보자

로그인 버튼에 클릭 이벤트를 걸어 클릭 시 MainActivity의 intent를 생성하고 시작하는 것을 볼 수있다. 원래 java코드와 비교를 해보면 변경점을 알 수 있다.

 

이제 이 코드를 좀 더 코틀린스럽게(?) 바꿔보자.

코틀린에 강점 중 하나가 findViewById의 나열을 더 이상 보지 않아도 된다는 것이다. 코틀린 안드로이드 익스텐션(Kotlin Android Extension)을 사용하여 쉽게 해결할 수 있다.


익스텐션 사용하기

Gradle Scripts의 build.gradle(Module: app)에 다음처럼 플러그인이 추가가 되어 있으면 사용할 수 있다.

이제 뷰 객체의 아이디 그대로 객체를 사용하면 된다.

프레그먼트에서는 프레그먼트를 구성하는 레이아웃을 사용할 수 있는 시점인 onViewCreated()부터 뷰 객체에 접근할 수 있다는 것을 알아두자.

조금 더 간단하게 해보자. java에서 lambda를 이용해 코드를 간결하게 만들 수 있던 것처럼 Kotlin에서도 lambda식을 사용해 간결하게 할 수 있다.

object: View.OnClickListener { } 를 ( )로 바꾸어주면 더욱 코드가 간결해진 것을 볼 수 있다.

 

댓글