2009-09-03 5 views
0

Android 애플리케이션 개발 초보자입니다.안드로이드리스트 뷰 : mouseover 액션

목록 상자의 마우스 오버 동작을 어떻게 식별 할 수 있습니까? 특정 셀을 마우스로 가리키면 해당 셀을 강조 표시하거나 배경색을 변경하려고합니다.

도와주세요.

답변

2

안드로이드에서 MouseOver의 개념은 하나도 없습니다. 사용자 상호 작용은 하드웨어/가상 키보드와 터치 스크린을 통해 이루어집니다.

ListView는 자동으로 현재 선택 항목을 강조 표시하므로 위쪽 및 아래쪽 DPad 키를 사용하면 원하는 효과를 얻을 수 있습니다.

0

나는 이것이 오래되었음을 알고 있지만 내 쿼리는이 원래 게시물로 돌아가고 있으므로 여기에서 공유하고 싶습니다.

선택자에 state_hovered를 구현하면 마우스 오버 이벤트에 대한 목록보기에 적합하지 않습니다.

사용자 지정 배열 어댑터를 사용하여이 이벤트를 수행 할 수 있습니다. * 여기서는 사용자가 직접 선택기 및 ArrayAdapter를 만드는 방법을 알고 있다고 가정합니다. 그렇지 않은 경우 다른 스택 오버플로 게시물에서 찾을 수 있습니다.

  1. 자신의 어레이 어댑터를 만듭니다.
  2. 어댑터에
  3. 재정의 View.OnHoverListener을 구현합니다 'onHover'method :

@Override public boolean onHover(View arg0, MotionEvent arg1) { int ev = arg1.getActionMasked(); switch (ev) { case MotionEvent.ACTION_HOVER_ENTER: arg0.setHovered(true); arg0.setSelected(true); return true; case MotionEvent.ACTION_HOVER_EXIT: arg0.setHovered(false); arg0.setSelected(false); return true; } return false; }

관련 문제