기능 처리방식 

  • polling : 기존에 기능별 메소드를 두 개 만들고 요소에 각각 onclick 속성으로 주는 방식
  • 이벤트 구동 방식 : Event Listener 객체를 사용하여 onClick 메소드에서 처리하는 방식

 

Event Listenter 객체 - 화면단에서의 이벤트를 감지하는 기능

특정 이벤트를 처리하는 인터페이스

OnClick 을 따로 만들어 준다.

인터페이스를 만들 것이다. 클릭을 감지하는 기능

상속 필요

 

 

 

 

기존 class 오른쪽 부분에 onclicklistener 인터페이스를 상속시켜준다

에러표시에 마우스 올리고 Alt + Enter 누르면 왼쪽 메뉴바가 나오고 Implement methods 클릭

ok 클릭

 

맨 밑에 override 된 메소드 생성된 걸 확인할 수 있다.

 

위에 버튼 요소 전역변수 추가하고

밑에 요소변수.SetOnClickListener(this) 추가해준다

this 가 현재 클래스 안에 있는 onClick메소드를 찾아간다.

 

  • view.getId() 에는 int형의 고유 코드가 데이터가 담긴다.
  • R.id.요소도 마찬가디로 int 형의 고유 코드 데이터가 담긴다.
  • btn_plus 고유 코드와 같다면 num++ 해주고 아니면 num-- 해준다.

 

이제 클릭한 요소의 id 값에 따라 조건문으로 실행내용을 달리해주면 된다.

 

 

버튼 클릭하여 ContstraintLayout (view 그룹) 바탕색 변경해주기

 

레이아웃 요소 선택 후 id 값을 main 으로 변경해 준 후

 

id 값으로 ConstraintLayout 요소를 가져온다.

버튼 요소도 가져와서 이벤트 걸어준다.

클릭시 클릭 요소의 id 값으로 비교하여 실행될 코드를 바꿔준다.

 

이벤트 처리방식 세번째

버튼 별로 일시적 객체 생성하여 실행해준다.

각 버튼의 기능이 완전히 다를 때 사용 되어진다.

기존 인터페이스 onClick 하나만 쓰는 것은

 

레이아웃 종류

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+ Recent posts