2011-09-30 1 views
5

한 번의 클릭으로 액세스 할 수 있어야하는 상단 부분에 일부 단추가 있기 때문에 사용자가 화면의 아래쪽 절반 만 터치해야만 내 MediaController를 숨길 수 있습니다. 즉, 첫 번째 클릭이 MediaController에 의해 차단되지 않습니다. 내가 개발자 문서에 읽은 내용에서Android : MediaController의 AnchorView는 어떤 용도로 사용됩니까?

:

... 특히, 컨트롤 이 setAnchorView으로 지정된 뷰 위에 떠(). 창이 3 초 동안 유휴 상태로 유지되고 사용자가 앵커보기를 터치하면 창이 다시 나타납니다.

내 anchor_view 레이아웃 : 컨트롤러가 켜져있을 때 내가 anchor_view 외부 화면을 터치 할 때마다

<View android:id="@+id/player_control" 
    android:layout_width="wrap_content" 
    android:layout_height="100dip" 
    android:layout_alignParentBottom="true"> 
</View >  

는하지만, 그것은 여전히 ​​그것을 숨기고 버튼 이벤트를 발생하지 않습니다.

방지 할 수있는 방법이 있습니까?

+0

이 문제도 발생합니다. 해결책을 찾았 니? –

답변

4

앵커 뷰는 MediaController에 의해서만 참조로 사용되어 컨트롤러를 그리기 시작해야하는 위치를 얻습니다. 컨트롤러 자체는 모든 뷰가 첨부 된 창 위로 새 창으로 그려져 있습니다 (). MediaController의 인스턴스가 생성되면,이 새 플로팅 윈도우가 (내부 API를 사용하여) 빌드되고 터치 리스너는 데코보기, 즉 전체 표면에 연결됩니다. 이러한 이유로 화면의 일부를 만지면 미디어 컨트롤러가 숨겨지기 때문에이 동작을 쉽게 사용자 지정할 수있는 방법이 없다고 생각합니다. MediaController을 확장하거나 다시 구현해야 할 수 있습니다.