音乐主Activity
/**
* MediaPlayer的两种创建方式 1.静态的 raw
*
* @author Administrator
*
*/
public class MainActivity extends Activity implements OnClickListener {
// 文件路径
private String path1 = “mnt/sdcard/ha.mp3”;
private MediaPlayer mediaPlayer;
private boolean isPuase = true;
private Button pause;
private SeekBar seekBar;
private Timer timer;
@Override
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// 初始化界面initViews();
}private void initViews() {Button play = (Button) findViewById(R.id.play);Button stop = (Button) findViewById(R.id.stop);pause = (Button) findViewById(R.id.pause);seekBar = (SeekBar) findViewById(R.id.seek);//设置拖动监听seekBar.setOnSeekBarChangeListener(new MySeekBar());play.setOnClickListener(this);stop.setOnClickListener(this);pause.setOnClickListener(this);
}
//拖动监听
class MySeekBar implements OnSeekBarChangeListener{//onProgressChanged 当进度改变时调用@Overridepublic void onProgressChanged(SeekBar seekBar, int progress,boolean fromUser) {// TODO Auto-generated method stub}// 开始拖动的时候调用@Overridepublic void onStartTrackingTouch(SeekBar seekBar) {// TODO Auto-generated method stub}//当停止拖动的时候调用@Overridepublic void onStopTrackingTouch(SeekBar seekBar) {//获取seekBar 的位置int progress = seekBar.getProgress();//设置播放的进度mediaPlayer.seekTo(progress);}}@Override
public void onClick(View v) {switch (v.getId()) {// 播放case R.id.play:Toast.makeText(MainActivity.this, "播放", 0).show();mediaPlayer = new MediaPlayer();// 1.重置mediaPlayer.reset();// 2.设置资源try {mediaPlayer.setDataSource(path1);//设置seekbar的总长度// 3.准备mediaPlayer.prepare();// 4,开始播放mediaPlayer.start();int duration = mediaPlayer.getDuration();//获取总时长seekBar.setMax(duration);timer = new Timer();timer.schedule(new MyTask(), 0, 1000);} catch (Exception e) {e.printStackTrace();}break;// 停止case R.id.stop:// 停止播放if (mediaPlayer != null) {mediaPlayer.stop();}break;// 暂停和继续播放case R.id.pause:if (isPuase) {mediaPlayer.pause();pause.setText("继续播放");} else {mediaPlayer.start();pause.setText("暂停");}isPuase = !isPuase;break;default:break;}
}
//计时器任务栈
class MyTask extends TimerTask{@Overridepublic void run() {Log.e("Main-->", "获取进度");int currentPosition = mediaPlayer.getCurrentPosition();seekBar.setProgress(currentPosition);}}
}
音乐主Activity相关推荐
- android 获取apk主activity,关于如何知道一个安装的apk的主activity
关于如何查找知道一个安装的apk的主activity 关于如何查找知道一个安装的apk的主activity,从而命令行进行am start的方法: $ adb install /media/neil/ ...
- Android Activity生命周期一探究竟 及 主Activity里带Thread跳转时的注意事项
问题背景: 最近用到了主Activity里有一个Thread在处理数据,当跳转到第二个Activity时,希望Thread暂停.从第二个Activity回来时这个Thread再接着运行.今天得空顺着这 ...
- 通过adb巧用monkey获取android设备中所有应用的主activity
由于工作需要,想获取所有应用的activity(这里仅限应用的主入口Launcher activity),搜索了一下,网上实现的方案都是基于android编程实现的,对于不懂开发的测试来说稍有难度,而 ...
- php aapt apk 包名,aapt 命令可应用于查看apk包名、主activity、版本等很多信息
List contents of Zip-compatible archive. 1.1 列出压缩文件目录 aapt l 参数: -v:会以table的形式输出目录,table的表目有:Length. ...
- 应用程序基础知识:activity和intent——Android开发秘籍
应用程序基础知识:activity和intent --Android开发秘籍 v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#defaul ...
- 安卓基础巩固(二):四大组件:Activity、Service、Broadcast、Content Provider
文章目录 Activity 生命周期 onCreate和onStart的区别 onPause和onStop的区别 生命周期的变化 Activity的启动 Intent Bundle Activity携 ...
- 自制一个简单的音乐播放器
这两天刚学完了contentprovider和service组件,就综合下所学的,自制了一个简单的音乐播放器. 代码如下: 主activity代码 public class MainActivity ...
- Androidstudio音乐播放器
Androidstudio音乐播放器 实现目的:利用广播在myapplication中原本button点我暂停按钮是灰色无法点击的,此时发送一条短信给自己的安卓手机,按钮变成黑色,音乐开始播放,此时点 ...
- Android 自定义音乐播放器实现
Android自定义音乐播放器 一:首先介绍用了哪些Android的知识点: 1 MediaPlayer工具来播放音乐 2 Handle.因为存在定时任务(歌词切换,动画,歌词进度条变换等)需要由Ha ...
最新文章
- 怎么学python-如何系统的学习python?
- Visual C# 2010 实现资源管理器
- Python网络爬虫与信息提取(二):网络爬虫之提取
- Auto_ml与TPOT的区别
- sql字符串拼接_Mybatis的SqlSession执行sql过程
- springboot之全局处理异常封装
- [转][Lucene.Net] 基本用法
- 检查和安装过程中的常见的问题
- train_test_split按比例划分
- eclipse多余的Workspace如何删除
- JAVA获取硬盘序列号
- 抖音5×5一笔连线问题无解的证明
- 作为史上最疯狂的科学家,特斯拉提出过哪些惊世骇俗的设想
- 云主机-本地内网通信OPEN-V
- 深度学习方法的超分辨率(Super-resolution)方向论文【不定期更新】
- Android recyclerview上拉加载更多
- 字节跳动自研 Web 构建工具 Rspack 正式发布
- 圆柱体积在线计算机,(完整版)圆柱体积计算练习题.docx
- 老铁们来来来,实战STM32
- 动画 animation