이전 글에서 추가를 했던 버튼에 클릭 이벤트를 추가하여 여러가지 기능을 이용해 봅시다.
[안드로이드 프로그래밍] 강좌 2. 어플에 버튼을 넣어보자, "Button"
버튼을 res폴더를 클릭 한 후 layout 폴더의 xml파일에 추가합니다.
<Button
android:id="@+id/button"
android:text="New Button"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
추가를 했으면 자바 파일로 갑니다.
가는 방법은 상단탭의 MainActivity.java를 클릭하시거나,
좌측 프로젝트 탭에서 java - 패키지명 - 자바파일을 클릭하시면 됩니다.
자바로 이동을 했다면 xml 파일에 넣었던 버튼을 참조하도록 합니다.
방법은 아래의 사진처럼 하시면 됩니다.
위의 사진처럼 버튼을 선언합니다.
코드는 아래와 같습니다.
Button button = (Button) findViewById(R.id.button);
위의 코드는 Button의 이름은 button, 이름이 button인 버튼의 아이디는 button이라는 것을 선언하는 겁니다.
findViewById의 안이 R.id.button 이유는 xml에서 추가했던 버튼의 id가 button이기 때문입니다.
<Button
android:id="@+id/button"
android:text="New Button"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
Button button = (Button) findViewById(R.id.button);를 입력하면 에러가 생기는 이유는
아직 버튼에 대한 import를 입력하지 않았기 때문이므로, Alt키와 Enter 키를 동시에 클릭하시거나 아래의 코드를 위의 import ... 아래에 입력하면 됩니다.
import android.widget.Button;
이제는 버튼을 클릭하면 이벤트를 추가하기 위해서 button에 OnClickListener를 설정합니다.
방법은 아래와 같습니다.
버튼을 선언했던 코드에 아래의 OnClickListener를 설정하는 코드를 입력해줍니다.
Button button =(Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
}
});
입력을 하게되면 또 에러가 뜨는데 아래의 import를 마찬가지로 위의 import ... 하단에 입력합니다.
import android.view.View;
import를 입력했다면 이제 버튼을 클릭시 간단한 메세지를 보여주는 방법을 알려드리겠습니다.
위의 OnClickListener를 설정했던 코드가운데
@Override
public void onClick(View view){
//이곳
}
});
여기서 중괄호 사이에 토스트(메세지)를 추가해줍니다.
토스트의 코드는 아래와 같습니다.
Toast.makeText(getApplicationContext(), "버튼을 클릭하셨습니다.",
Toast.LENGTH_LONG).show();
토스트를 짧게보여주고 싶다면 Toast.LENGTH_LONG 대신 Toast.LENGTH_SHORT를 입력하시면 됩니다.
이 코드를 //이곳 부분에 입력하시면 됩니다.
큰 따옴표 사이의 "버튼을 클릭하셨습니다."를 원하는 텍스트로 바꾸면 버튼 클릭시 원하는 텍스트를 보여줄 수 있습니다.
[완성 코드]
[버튼 클릭시 토스트]
이 글이 도움이 되셨다면,
로그인이 필요없는 아래의 공감 버튼 클릭 부탁드립니다.
감사합니다!
'프로그래밍 > C 언어' 카테고리의 다른 글
[안드로이드 프로그래밍]버튼에 클릭 이벤트를 추가해보자 (0) | 2018.01.22 |
---|---|
[안드로이드 프로그래밍] 강좌 2. 어플에 버튼을 넣어보자, "Button" (0) | 2018.01.22 |
[안드로이드 프로그래밍] 강좌 1. 어플에 텍스트를 넣어보자, "TextView" (0) | 2018.01.22 |
안드로이드 스튜디오(Android Studio) 설치하기 (0) | 2018.01.22 |