http://wowmymwow.tistory.com/entry/OnTouch-Actionup
Action_down 은 잘 먹는데 Action_up 이 안 먹을 때 있다.
그 이유는....return 때문에 그런다.
return false; 로 하면 action_up 이 안된다. 하지만 down은 잘된다.
return true; 로 하면 up도 잘 될 것이다.
그 이유를 생각해보자면 return false 를 하면 더 이상 touch 이벤트를 찾지를 않는다. 그래서 이벤트가 down까지만 찾고 리턴을 하고 만다. 하지만 return true; 를 하면 이벤트를 up까지도 찾는다.
return 이 ture, false 이냐를 잘 판단하는게 좋을 것 이다.
public boolean onTouchEvent(MotionEvent event)
{
int action = event.getAction();
Log.i("TEST","action="+action);
if(action == MotionEvent.ACTION_DOWN)
{
mBgColor=Color.parseColor(getResources().getString(R.color.black));
invalidate();
Log.i("TEST","down childview");
}
else if(action == MotionEvent.ACTION_UP)
{
mBgColor=Color.parseColor(getResources().getString(R.color.white));
invalidate();
Log.i("TEST","up childview");
}
return true;
}
반응형
'차근차근 > Android' 카테고리의 다른 글
액티비티 시작 후 키보드 감추기 (0) | 2014.10.17 |
---|---|
사용자 정의 메뉴 숨기기(??), 보이기(???) (0) | 2014.10.17 |
안드로이드] TabView보다 이쁜 탭이 가능한 include 사용하기 (0) | 2014.10.17 |
항상 최상위에 나오는 뷰 만들기. (0) | 2014.10.17 |
tabactivity 대체 (0) | 2014.10.16 |