我使用 MediaController 來播放音樂。當點擊 "back"按鈕時我想讓 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 中沒有顯示 string。如何處理這個問題?
在 media controller 中重寫這個方法:
@Override
public void hide() {
// TODO Auto-generated method stub
super.show();
}