Android byDreamy postedDec 17, 2014

맨날 까먹는 버튼 클릭 이벤트 핸들러 코드

?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

+ - Up Down Comment Print

레이아웃에 두개의 버튼이 있다고 가정하겠습니다. id는 각각 viewMode, editMode라고 하면.. 클릭 이벤트에 대한 핸들러 코드를 작성하는 방법에는 2가지가 있습니다. 물론 따져보면 둘다 동일한 방식이기는 하지만 코드 모냥새가 다르므로 다르다고 치겠습니다. 

첫번째 방식입니다. 다수의 버튼들에 대한 이벤트 코드를 한자리에 가족같은 분위기로 다스리는 치국평천하 방식이라고 할 수 있겠습니다..


@Override
public void onCreate(Bundle savedInstanceState) {
    ....
 
    findViewById(R.id.viewMode).setOnClickListener(btnClickListener);
    findViewById(R.id.editMode).setOnClickListener(btnClickListener);
    
    ....
}
 
private Button.OnClickListener btnClickListener = new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        switch(v.getId()) {
        case R.id.viewMode:
            map.setMouseMode(MouseMode.MapViewMode);
            break;
     
        case R.id.editMode:
            map.setMouseMode(MouseMode.EditMode);
            break;
        }
    }
};

두번째 방식입니다. 이 방식은 각 버튼마다 이벤트 처리 코드를 따라 분리해 두는 방식입니다.

@Override
public void onCreate(Bundle savedInstanceState) {
    ....
         
     findViewById(R.id.viewMode).setOnClickListener(
         new Button.OnClickListener() {
             @Override
             public void onClick(View v) {
                 map.setMouseMode(MouseMode.MapViewMode);
             }
         }
     );
         
     findViewById(R.id.editMode).setOnClickListener(
         new Button.OnClickListener() {
             @Override
             public void onClick(View v) {
                 map.setMouseMode(MouseMode.EditMode);
             }
        }
    );
         
    ....
}






나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5