有没有一个方法用类似Observer/Listener的方法来监听MediaPlayer播放位置的变化? MediaPlayer有一个getPosition方法可以取得播放的现在位置,但是如果用这个方法的话,就需要调用者一次一次去调用。有没有一个方法用类似Observer/Listener的方法来监听MediaPlayer播放位置的变化?请各位高人指导。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你的意思是不想客户端去轮循,而改用监听的方式。可惜MediaPlayer并没有提供这样的接口。 VideoView中也有进度条,一秒钟走一段,它的实现: private Handler mHandler = new Handler() { @Override public void handleMessage(Message msg) { int pos; switch (msg.what) { case FADE_OUT: hide(); break; case SHOW_PROGRESS: pos = setProgress(); if (!mDragging && mShowing && mPlayer.isPlaying()) { msg = obtainMessage(SHOW_PROGRESS); sendMessageDelayed(msg, 1000 - (pos % 1000)); } break; } } };也是相当于定时器来实现的。 android 4.0怎样实现开机自启动服务,没有activity 急!急!急!哪位大神帮帮忙,谢了 关于andriod web开发里图像缩放的问题 为什么一个AVD配置出来的两个系统同时运行会很卡 条形码扫描的问题!!!!! 请问android如何编译汇编代码? andorid权限的问题 android开发网络应用,求思路 在Ubuntu 中编译自带的JNI 总是弹出MountManager 编译失败. 求大神们帮忙,下面这种xml格式怎么解析啊 关于 TextView 显示段落文字的问题 谁能给我讲一下这段代码,要详细 android 事物操作
可惜MediaPlayer并没有提供这样的接口。
@Override
public void handleMessage(Message msg) {
int pos;
switch (msg.what) {
case FADE_OUT:
hide();
break;
case SHOW_PROGRESS:
pos = setProgress();
if (!mDragging && mShowing && mPlayer.isPlaying()) {
msg = obtainMessage(SHOW_PROGRESS);
sendMessageDelayed(msg, 1000 - (pos % 1000));
}
break;
}
}
};也是相当于定时器来实现的。