지금까지 여러 개의 버튼이있는 응용 프로그램이 있습니다. 버튼을 클릭했을 때 발생하는 이벤트는 어떻게 onClick()
을 설정할 수 있습니까? 내 경우 : 자습서가 있습니다. 클릭 할 수있는 버튼 이외의 것을 클릭하면 "clickable
이 X가 아닙니다."라는 메시지가 나타납니다.리스너가 처리하지 않는 클릭을 처리하는 방법은 무엇입니까?
0
A
답변
0
모든 View
은 수신기로 수신 대기 할 수있는 onClick
이벤트를 수신 할 수 있습니다.
버튼을 클릭 할 때 모든 클릭 이벤트를 수신하고 특정 동작을 수행하려면 클릭하고 메시지를 표시하는 경우에는 활동을 OnClickListener
으로 설정 한 다음 클릭 된보기입니다.
public class MainActivity extends Activity implements View.OnClickListener{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
View v = findViewById(R.id.top_most_view);
v.setOnClickListener(this);
}
@Override
public void onClick(View v){
if(v.getId() == R.id.button1){
// do something for the button
}else if(v.getId == R.id.button2){
// other button
}else{
// Show the non clickable message
}
}
}
R.id.top_most_view는 레이아웃의 최상단보기의 ID입니다. 예를 들어, 다른 모든 뷰를 포함한 LinearLayout입니다.
예에서는 두 개의 버튼 만 넣었지만 원하는만큼 추가 할 수 있습니다. 또한 계단식 ifs 대신 스위치를 사용할 수 있습니다.
코드에 오자가있을 수 있습니다. 테스트하지 않았습니다. 그러나 솔루션을 구현하는 방법에 대한 일반적인 아이디어를 얻어야합니다.
감사합니다. – InDaPond