2013-05-01 2 views
-3

를 클릭 된 뷰의 ID를 검색.내가 10 개 + 버튼 주위 <code>MyActivity extends Activity implements OnClickListener{</code></p> <p>이 활동 참조를 사용하고 모든 버튼이라고 <code>setOnClicklistener(this)</code> 방법을 가지고있어

@Override 
public void onClick(View v){ 
    //here I need to get the id of the view that was clicked... 
    //Depending on the button that was clicked different actions need to be called... 
    //How do I get the ID of the button that was clicked... 
} 
+0

스위치 케이스 – stackoverflow

+2

Google을 먼저 사용해보세요. http://developer.android.com/reference/android/view/View.html#getId() – httpdispatch

+0

먼저 Google을 사용하십시오. –

답변

3
@Override 
public void onClick(View v){ 
switch(v.getId()){ 
    case R.id.btnCancel: 
     //your code for onclick of that button 
     break; 
} 
1

당신은 ID를 얻기 위해 다음과 같은 방법을 사용할 수 있습니다.

@Override 
public void onClick(View v){ 
    switch(v.getId()) { 
     case R.id.button_1: ...; break; 
     case R.id.button_2: ...; break; 
     case R.id.button_3: ...; break; 
     ... 
     default: //unknown button clicked 
    } 
} 

이가 아니라 :

v.getId() 
1
@Override 
    public void onClick(View v){ 
     int id = v.getId(); 
     if(id == R.id.button_ok){ 

     } 

    } 
1

당신의 onClick 방법으로 전송되는 View 매개 변수는 그러므로 예를 들어, 그것이 어느 확인할 수 있습니다, 클릭 된 실제 버튼입니다 하나의 옵션, 다른 옵션이 있습니다. 자세한 정보는 Google 검색을 참조하십시오.

1

사용 :

if(v.getId()==R.id.whatever) 
{ 
// do something 
} 

또는 당신도 사용할 수 있습니다 버튼 BTN = (버튼) findViewById를 (R.id.btn);

if(v==btn) 
{ 
// do something 
} 

그러나 두 번째 것은 권장되지 않습니다.

관련 문제