마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

다수의 이미지뷰 이벤트 각각 일괄 처리하기

0 추천
n1 n2 n3 n4 n5 라는 이미지뷰가 있습니다. 각각 숫자를 보여주는 뷰예요.


근데 그 이미지뷰를 클릭하면 변수에 그 숫자가 들어가게하고싶은데
(1을 클릭하면 1이, 3을 클릭하면 3이)


int var;

n1.온클릭리스너(){
var = 1;
}
n2.온클릭리스너(){
var = 2;
}
n3.온클릭리스너(){
var = 3;
}
...

이렇게 각각써주는거 말고

케이스문을 통해서 효율적으로 한 함수로 작성하는법 없을까요??
pbss (460 포인트) 님이 2018년 11월 22일 질문

2개의 답변

0 추천
activity에 onclicklistener를 implements하시고 override해서 onclick에 케이스문으로 구현할수있습니다.
뱅구다 (11,280 포인트) 님이 2018년 11월 22일 답변
0 추천
이런식으로 하시면 됩니다.

View.OnClickListener mOnClickListener = new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            switch (v.getId()){
                case R.id.num1:
                    break;
                case R.id.num2:
                    break;
                case R.id.num3:
                    break;

            }
        }
    }; 리스너 선언 후

num1.setOnclickListener(mOnClickListener);

반드시 온클릭 리스너 등록 해주셔야 합니다.
평범 (3,560 포인트) 님이 2018년 11월 22일 답변
...