[Android] 이벤트 처리
버튼을 눌렀을 때 목차가 열리고 숫자가 추가되는 등 다양한 기능을 수행하게 하기 위해서 버튼에 대한 이벤트 처리가 필요하다.
리스너를 구현해 특정 행동에 대한 이벤트를 처리할 수 있다. 한 버튼에 대해 이벤트가 발생하고, 오버라이딩 된 메서드를 호출해 이벤트를 처리하는 방식으로 동작한다.
public class MainActivity extends AppCompatActivity {
String prevstr = "";
int intresult = 0;
int pluscount = 0;
boolean pluscheck = false;
String tempstr = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button1 = (Button) findViewById(R.id.button1);
button1.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
pluscheck = false;
if(pluscount==0){
prevstr = prevstr + "1";
intresult = Integer.parseInt(prevstr);
TextView preview = (TextView) findViewById(R.id.preview);
preview.setText((CharSequence) prevstr);
}else{
prevstr = prevstr + "1";
TextView preview12312 = (TextView) findViewById(R.id.preview);
preview12312.setText(prevstr);
tempstr = tempstr + "1";
}
}
});
해당 리스너는 선언만 되어있고, 메서드들이 구현돼있지는 않다.
리스너 클래스를 내부 클래스로 정의하고 각각의 메서드들을 구현해 뷰들에 대한 이벤트를 처리하는 방법이 있고, 무명 클래스를 사용해 클래스를 정의함과 동시에 객체를 생성해 뷰들에 대한 이벤트를 처리하는 방법이 있다.
버튼 객체를 생성하고 디자인 메뉴에서 만든 버튼의 ID를 지정해준 뒤, 생성한 버튼 객체에 대해 리스너를 무명 클래스를 사용해 onClick 메서드를 구현하고 이벤트를 처리해 줬다.
반응형
'Mobile > Android' 카테고리의 다른 글
[Android] 대화상자 사용하기 (0) | 2021.10.18 |
---|---|
[Android] 간단한 계산기 만들기 (0) | 2021.10.18 |
[Android] 텍스트뷰 (0) | 2021.10.12 |
[Android] Java 코드와 XML 레이아웃 (0) | 2021.10.11 |
[Android] 레이아웃 다루기 (0) | 2021.10.11 |
댓글
이 글 공유하기
다른 글
-
[Android] 대화상자 사용하기
[Android] 대화상자 사용하기
2021.10.18 -
[Android] 간단한 계산기 만들기
[Android] 간단한 계산기 만들기
2021.10.18 -
[Android] 텍스트뷰
[Android] 텍스트뷰
2021.10.12 -
[Android] Java 코드와 XML 레이아웃
[Android] Java 코드와 XML 레이아웃
2021.10.11