안드로이드 개발 질문/답변
(글 수 45,052)
Button btnIntl = (Button) findViewById( R.id.btnSendMsgGlobal );
btnIntl.setOnClickListener(
new View.OnClickListener() {
public void onClick( View v ) {
//액션 정의
}
}
);
btnIntl.setOnTouchListener(
new OnTouchListener(){
public boolean onTouch(View v, MotionEvent event) {
if(MotionEvent.ACTION_DOWN == event.getAction()){
//액션 정의
}
if(MotionEvent.ACTION_UP == event.getAction()){
//액션 정의
}
return true;
}
}
);
이렇게 개발 하려는 이유는 버튼을 클릭하고 있다가 버튼이 있는 곳 외에서 손을 뗄 경우 이벤트가 발생하지 않게 하려고 하는데요.
쉽게 말하면 버튼이 있는 곳에서만 클릭(버튼 누르고, 버튼 떼고)을 해야 이벤트가 발생할 수 있도록 하려고 합니다.
그래서 onTouchListener와 onClickListener를 동시 구현 하려고 했었는데요.
onTouchListener만 적용이 되고 onClickListener는 적용이 안되는듯 합니다.
이거 해결할 방법이 없을까요?
btnIntl.setOnClickListener(
new View.OnClickListener() {
public void onClick( View v ) {
//액션 정의
}
}
);
btnIntl.setOnTouchListener(
new OnTouchListener(){
public boolean onTouch(View v, MotionEvent event) {
if(MotionEvent.ACTION_DOWN == event.getAction()){
//액션 정의
}
if(MotionEvent.ACTION_UP == event.getAction()){
//액션 정의
}
return true;
}
}
);
이렇게 개발 하려는 이유는 버튼을 클릭하고 있다가 버튼이 있는 곳 외에서 손을 뗄 경우 이벤트가 발생하지 않게 하려고 하는데요.
쉽게 말하면 버튼이 있는 곳에서만 클릭(버튼 누르고, 버튼 떼고)을 해야 이벤트가 발생할 수 있도록 하려고 합니다.
그래서 onTouchListener와 onClickListener를 동시 구현 하려고 했었는데요.
onTouchListener만 적용이 되고 onClickListener는 적용이 안되는듯 합니다.
이거 해결할 방법이 없을까요?
버튼 안에서 손을 뗐을때는 return false; 해야 할거 같은데요