我尝试使用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中显示。 有人有想法吗?
答案 0 :(得分:12)
在媒体控制器
中也覆盖此方法@Override
public void hide() {
// TODO Auto-generated method stub
super.show();
}
答案 1 :(得分:5)
如果你想保留hide()方法,但每次使用控件时控制器都不会消失:
this.mediaController = new MediaController(this){
@Override
public void show(int timeout) {
super.show(0);
}
};