반응형
반응형

오늘은 코틀린(Kotlin) 안드로이드 배우기 #1 - ClickEvent, when에 대해서 알아보겠습니다.

코틀린(Korlin)을 사용하기 위해서는 기본적으로 안드로이드 스튜디오를 설치하면 바로 사용이 가능합니다.

안드로이드 설치는 다음 시간에 다루고 이번 시간에는 코틀린을 사용해서 버튼 이벤트 연결에 대해서 알아보겠습니다.

안드로이드 스튜디오 설치 상태에서 "NewProject"를 선택 후 EmptyActivity를 선택해 줍니다.

Project 설정에서 원하는 폴더에 Name, Package 명을 입력해 주세요.

가장 중요한 "Language"는 Kotlin을 선택해 줍니다.

 

 

 

이번 강좌에서는 MainActivity, activity_main.xml 두 개 파일만 사용하겠습니다.

먼저 정렬을 하기 위해서 activity_main.xml 파일에서 레이아웃을 변경해 주십시오.

레이아웃 변경 후 컨트롤을 등록하기 위해서 아래 코드를 입력해 주세요.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_margin="7dp"
        android:onClick="onClick"
        android:id="@+id/btnStart"
        android:text="Start"
        tools:ignore="MissingConstraints"
        />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!"
        android:layout_gravity="center"
        android:layout_margin="25dp"
        android:id="@+id/MainText"/>

</LinearLayout>

세로 정렬을 사용하기 위해서 LinearLayout 속성 android:orientation="vertical"을 추가하고

이벤트를 사용하기 위해서 버튼, 텍스트 뷰를 추가해 줍니다.

"Shift" + F10을 클릭하면 컴파일 되면서 안드로이드가 실행됩니다.

버튼 이벤트 속성 중 android:onClick="onClick"은 Listener를 사용해서 이벤트를 연결하기 위해서 설정이 반드시 필요합니다.

이제 MainActivity로 이동합니다.

코틀린 확장자는. kt로 생성됩니다.

코틀린은 자바와 다르게 NULL 대한 처리를 명확하게 처리하여 오류를 최소화해 줍니다.

버튼 이벤트를 연결하기 위해서 View.OnClickListerner을 상속받습니다.

코틀린은 NULL을 구분하기 위해서'?'를 사용합니다.

즉 변수 뒤에'?' 가 있을 경우 NULL을 허용한다는 뜻입니다

'?'가 없을 경우는 NULL을 허용할 수 없어 컴파일이 안됩니다.

when문은 자바에서 사용하는 switch 문과 동일합니다.

버튼에 설정한 onClick를 연결하기 위해서 상속된 Listener 가상 함수 onClick을 override 합니다.

onClick 함수에서는 코틀린 when을 사용해서 버튼 ID를 구분해서 텍스트 뷰를 변경하는 로직을 추가합니다.

override fun onClick(v: View?) {
       when(v?.id)
       {
           R.id.btnStart->{
               var tView = findViewById<TextView>(R.id.MainText)
               if( bCheck) {
                   tView.setText("Click Button")
                   bCheck = false
               }
               else
               {
                   tView.setText(R.string.sRString1)
                   bCheck = true
               }
           }
       }
    }

코틀린은 형 변환을 자유롭게 하기 위해서 생성 시 만 설정해 줍니다.

findViewById<형변환Class>

코드를 추가하고 컴파일 하면 버튼을 클릭하면 텍스트 뷰가 변경되는 것을 확인할 수 있습니다.

이상으로 코틀린(Kotlin) 안드로이드 배우기 #1 강좌를 마치겠습니다.

감사합니다.

#코틀린, #안드로이드, #Kotlin, #안드로이드강좌, #onClick, #when

반응형

+ Recent posts