2011-12-15 1 views
4

나는 음악을 재생하기 위해 MediaController를 사용하려고합니다. "뒤로"버튼을 누를 때까지 MediaController가 나타나길 원합니다.숨기기없이 MediaController 만들기

MediaController mediaController = new MediaController(this){ 
@Override 
public void setMediaPlayer(MediaPlayerControl player) { 
super.setMediaPlayer(player); 
this.show(); 
} 
@Override 
public void show(int timeout) { 
super.show(0); 
} 
//instead of press twice with press once "back" button to back 
@Override 
public boolean dispatchKeyEvent(KeyEvent event) { 
if(event.getKeyCode() == KeyEvent.KEYCODE_BACK) { 
Activity a = (Activity)getContext(); 
a.finish(); 
} 
return true; 
} 
}; 

하지만 여전히 하나의 문제가를 MediaController 동안 볼을 : 지금은 코드 아래에 시도합니다. MediaController가 화면을 터치하면 MediaController가 숨겨집니다. 나는 이미 코드 아래 시도 :

@Override 
public boolean onTouchEvent(MotionEvent event) { 
Log.d("screen","touch"); 
return true; 
} 

하지만이 작동하지 않았다. 문자열이 Logcat에 표시되지 않았습니다. 누구나 할 생각이 있습니까?

답변

12

재정이 방법을 사용하면 컨트롤이 사용할 때마다 사라지는 컨트롤러가) 방법을 숨기기 (유지하지만하려면 내부 미디어 컨트롤러

@Override 
      public void hide() { 
       // TODO Auto-generated method stub 
       super.show(); 
      } 
+0

코드는입니다 나를 위해 유용합니다. – brian

+2

@ thist이 코드를 사용하여 설정하십시오. 미디어 contollers는 숨기고 있지는 않지만 back press 활동은 어떤 아이디어도 끝내지 않았습니다. –

5

:

this.mediaController = new MediaController(this){ 
    @Override 
    public void show(int timeout) { 
     super.show(0); 
    } 
}; 
+0

이것은 가장 좋은 답변입니다. 숨기기를 사용 중지하지 않습니다. 감사. – Shirane85

+0

이것은 작동하지 않습니다. –

+0

2 년 전이었습니다. 구식 일 수 있습니다. 죄송합니다. 귀하에게 도움이되지 않았습니다. – NBcrafts