안드로이드 스튜디오:: Kotlin :: 앱 만들기 기초 #3 (버튼 만들기)

Android/Kotlin 2020.05.20 댓글 moonsu
728x90

"안드로이드 스튜디오 :: 앱 만들기 기초 #2 (프로젝트 구성)" 바로가기

안드로이드 스튜디오에서 코틀린을 사용하여 버튼 만드는 방법을 살펴본다.

 

1. res > layout > activity_main.xml 파일 열기

메인 화면이 될 activity_main.xml파일을 열어 다음과 같이 작성한다.

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
    tools:context=".MainActivity">
    
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">    
    
    	<Button  //항상 대소문자에 주의한다.
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="버튼1"/>
            
    </RelativeLayout>

</androidx.constraintlayout.widget.ConstraintLayout>

항상 대소문자에 유의하여 작성한다.

 

2. 버튼에 이름 넣기

만들어진 버튼은 껍데기만 존재할 뿐이다. 버튼이 버튼되게 하려면 기능을 하도록 명령해야 한고 그러기 위해선 다른 객체와 구별하기 위한 이름이 필요하다.

...
    <Button  //항상 대소문자에 주의한다.
        android"@+id/button1" //이름을 지정해준다. 피카츄처럼
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="버튼1"
...

버튼에 ID를 지정해준다. ID는 객체마다 고유하기 때문에 중복될 수 없다. 누가 어떤 일을 할 것인지를 ID를 통해 명령하기 때문에 상당히 중요하다. "가라!" 아니고 "가라! 피카츄!" 라고 하는 것처럼. 각 속성의 순서는 달라져도 상관없다.

 

3. 자바(또는 코틀린) 파일에 클릭 이벤트 함수 추가

MainActivity.java(또는 MainActivity.kt) 파일을 열어 다음과 같이 작성한다.

 

kotlin

import kotlinx.android.synthetic.main.activity_main.* //(1)

...
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    button1.setOnClickListener{ //(2)
        Toast.makeText(applicationContext, "버튼1 클릭", Toast.LENGTH_LONG).show()
    }
}

   (1) 코틀린은 자바와 다르게 findViewById()를 사용하지 않고도 객체의 ID를 바로 사용할 수 있다. 이때 버튼에 오류가 발생한다면 (1)라이브러리가 import되어 있는지 살펴보자. 확실히 자바보단 코틀린이 간편하다.

 

실행 후 버튼을 클릭하면 지정해둔 메세지가 뜨는 것을 볼 수 있다.

[안드로이드 스튜디오 앱 만들기 기초 :: 버튼 만들기]

 

"안드로이드 스튜디오 :: 앱 만들기 기초 #4 (에뮬레이터 실행)" 바로가기

728x90
반응형

댓글