android播放器,点击暂停,再点暂停按钮可以继续播放,要是点播放按钮从头播放了

花谢尊前不敢香 2012-08-08 03:39:22
public void mediaplay(View v) {
switch (v.getId()) {
case R.id.playbutton:
String filename = filenames.toString();

File file = new File(Environment.getExternalStorageDirectory(),
filename);
if (file.exists()) {
path = pathload;
play(0);
} else {
path = null;
Toast.makeText(this, R.string.filenoexsit, 1).show();
}
break;

case R.id.pausebutton:
if (mediaPlayer.isPlaying()) {
mediaPlayer.pause();
pause = true;
} else {
if (pause) {
mediaPlayer.start();
pause = false;
}
}
break;

case R.id.resetbutton:
if (mediaPlayer.isPlaying()) {
mediaPlayer.seekTo(0);
} else {
if (path != null) {
play(0);
}
}
break;
case R.id.stopbutton:
if (mediaPlayer.isPlaying()) {
mediaPlayer.stop();
}
break;
}
}

private void play(int position) {
try {
mediaPlayer.reset();
mediaPlayer.setDataSource(path);
mediaPlayer.setDisplay(surfaceView.getHolder());
mediaPlayer.prepare();// 缓冲
mediaPlayer.setOnPreparedListener(new PrepareListener(position));
} catch (Exception e) {
e.printStackTrace();
}
}

private final class PrepareListener implements OnPreparedListener {
private int position;

public PrepareListener(int position) {
this.position = position;
}

public void onPrepared(MediaPlayer mp) {
mediaPlayer.start();// 播放视频
if (position > 0)
mediaPlayer.seekTo(position);
}
}
怎么判断啊
...全文
5311 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 aminfo 的回复:]
改case R.id.playbutton:这段代码



Java code


case R.id.playbutton:
if (pause && mediaPlayer!=null)
{
mediaPlayer.start();
pause = false;
}
else
{
String filename = filenames.toStri……
[/Quote]谢谢,我的注意力都放在
 if (file.exists()) {
path = pathload;
play(0);
} else {
path = null;
Toast.makeText(this, R.string.filenoexsit, 1).show();
}
这里了,晕死。
鄙人姓胡 2012-08-08
  • 打赏
  • 举报
回复
点击播放的时候,先判断一下当前音乐的播放状态:

如果是停止状态:从头播放即可
如果是暂停状态:直接start()就行了
如果是播放状态:应该是不让点击的

一般暂停、播放是用一个按钮控制的,只需要换不同的背景图片就可以了,
看楼主的描述,应该是将播放、暂停分开处理的吧,这样在逻辑处理上会麻烦许多
AMinfo 2012-08-08
  • 打赏
  • 举报
回复
改case R.id.playbutton:这段代码



case R.id.playbutton:
if (pause && mediaPlayer!=null)
{
mediaPlayer.start();
pause = false;
}
else
{
String filename = filenames.toString();

File file = new File(Environment.getExternalStorageDirectory(),
filename);
if (file.exists()) {
path = pathload;
play(0);
} else {
path = null;
Toast.makeText(this, R.string.filenoexsit, 1).show();
}

}
break;
实训报告书 实训名称: Android视频播放 系 (部): 专业班级: 学生姓名: 学 号: 指导教师: 完成日期: "实训课题 "Android视频播放 " "实训人姓名 " "同组人员 " " "实训日期 " " "实训成绩 " " "指导教" " "师评语" " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " "指导教师签名:______________ " " "_______年 ____ 月____日 " 目 录 1 实训目的 1 2 android视频播放系统的分析与设计 1 2.1 系统功能描述 1 2.2 系统模块设计 1 3 主要代码清单 2 4 程序运行与测试 2 5 实训总结 3 android视频播放系统的设计与实现 1 实训目的 本学期我们学习了JAVA课程和Android应用程序开发课程。而Android应用程序是利用 Java语言开发的,本次实训能够对我们所学的Java语言和Android应用程序开发的一次综 合实践,使我们能够更好的掌握Java语言在实际开发中的应用,同时也为了使我们能够 更好的掌握和学习Android应用程序开发,对所学的知识进一步牢固。培养运用所学知识 解决实际课程的能力,培养开发Android应用程序的思想和方法。同时在实训过程中也能 不断学习新的知识。 2 Android视频播放系统的分析与设计 2.1 系统功能描述 该系统是一个能够在Android平台下运行的视频播放。能够实现一下功能: 1)播放功能: 能够实现mp4、avi格式文件的播放。 2)暂停功能: 暂停按钮时能够暂停播放视频,再次暂停按钮时能够继续播放。 3)重播功能: 重播按钮时能够从头开始播放视频。 4)停止功能: 停止按钮时能够停止播放视频,播放按钮时能够从头开始播放。 5)快进功能: 快进按钮时能够向前跳跃5秒播放。 6)后退功能: 回退按钮时能够向后跳跃5秒播放。 7)显示进度条: 能够显示文件播放进度。 拖动进度条能够实现视频快进、快退功能。 8)退出功能: 退出按钮时能够正常退出程序。 2.2 系统模块设计 1、输入文件模块:在该模块中采用EditText控件来实现。 2、播放视频模块:该模块是用MediaPlayer类通过surfaceView来实现。 3、暂停播放模块:该模块是用MediaPlayer.push()方法来实现。 4、重播模块:该模块通过MediaPlayer.reset()方法来实现。 5、停止播放模块:该模块通过MediaPlayer.stop()方法实现。 6、快进模块:该模块通过MediaPlayer.seekTo()方法来实现。 7、后退模块:该模块通过MediaPlayer.seekTo()方法来实现。 8、退出模块:该模块通过调用finish()方法来实现,并释放资源。 3 主要代码清单 3.1 main.xml布局文件 android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > android:id="@+id/textview" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/filename" /> android:id="@+id/filename" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="yueshen.mp4" /> 该部分是在主界面上放置一个EditText看控件,在本程序中用于接收输入的文件名。 android:id="@+id/surfaceView" android:layout_width="fill_parent" android:layout_height="300dp" /> SurfaceView控件是用于播放
实训报告书 实训名称: Android视频播放 系 (部): 专业班级: 学生姓名: 学 号: 指导教师: 完成日期: "实训课题 "Android视频播放 " "实训人姓名 " "同组人员 " " "实训日期 " " "实训成绩 " " "指导教" " "师评语" " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " "指导教师签名:______________ " " "_______年 ____ 月____日 " 目 录 1 实训目的 1 2 android视频播放系统的分析与设计 1 2.1 系统功能描述 1 2。2 系统模块设计 1 3 主要代码清单 2 4 程序运行与测试 2 5 实训总结 3 android视频播放系统的设计与实现 1 实训目的 本学期我们学习了JAVA课程和Android应用程序开发课程。而Android应用程序是利用 Java语言开发的,本次实训能够对我们所学的Java语言和Android应用程序开发的一次综 合实践,使我们能够更好的掌握Java语言在实际开发中的应用,同时也为了使我们能够更 好的掌握和学习Android应用程序开发,对所学的知识进一步牢固.培养运用所学知识解决 实际课程的能力,培养开发Android应用程序的思想和方法。同时在实训过程中也能不断 学习新的知识。 2 Android视频播放系统的分析与设计 2.1 系统功能描述 该系统是一个能够在Android平台下运行的视频播放.能够实现一下功能: 1)播放功能: 能够实现mp4、avi格式文件的播放。 2)暂停功能: 暂停按钮时能够暂停播放视频,再次暂停按钮时能够继续播放。 3)重播功能: 重播按钮时能够从头开始播放视频。 4)停止功能: 停止按钮时能够停止播放视频,播放按钮时能够从头开始播放。 5)快进功能: 快进按钮时能够向前跳跃5秒播放。 6)后退功能: 回退按钮时能够向后跳跃5秒播放。 7)显示进度条: 能够显示文件播放进度。 拖动进度条能够实现视频快进、快退功能。 8)退出功能: 退出按钮时能够正常退出程序。 2。2 系统模块设计 1、输入文件模块:在该模块中采用EditText控件来实现。 2、播放视频模块:该模块是用MediaPlayer类通过surfaceView来实现。 3、暂停播放模块:该模块是用MediaPlayer。push()方法来实现。 4、重播模块:该模块通过MediaPlayer.reset()方法来实现。 5、停止播放模块:该模块通过MediaPlayer.stop()方法实现。 6、快进模块:该模块通过MediaPlayer.seekTo()方法来实现. 7、后退模块:该模块通过MediaPlayer.seekTo()方法来实现. 8、退出模块:该模块通过调用finish()方法来实现,并释放资源。 3 主要代码清单 3。1 main。xml布局文件 android="http://schemas.android。com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > android:id="@+id/textview" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/filename" /〉 android:id="@+id/filename" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="yueshen。mp4" /> 该部分是在主界面上放置一个EditText看控件,在本程序中用于接收输入的文件名。 android:id="@+id/surfaceView" android:layout_width="fill_parent" android:layout_height="300dp" /〉 SurfaceView控件是用于播放

80,472

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧