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

Android/Java 2020.06.25 댓글 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 파일을 열어 다음과 같이 작성한다.

...
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button button1 = findViewById(R.id.button1); //(1)

        button1.setOnClickListener(new View.OnClickListener() { //(2)
            @Override
            public void onClick(View v) {
                Toast.makeText(getApplicationContext(), "버튼1 클릭", Toast.LENGTH_LONG).show(); //(3)
            }
        });
    }
}

   (1) findViewById()를 통해 xml파일에서 작성한 버튼의 ID를 가져온다.

   (2) 가져온 버튼에 클릭이벤트 명령을 준다. onClick()를 필수로 오버라이드 해야한다.

   (3) 핸드폰에 토스트 메세지를 뿌려준다. (알람 설정하면 "알람이 설정되었습니다" 같은 메세지)

 

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

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

 

Kotlin편 바로가기

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

728x90
반응형

댓글