首页 > 系统 > Android > 正文

android playmusic--音乐播放

2019-11-09 15:41:43
字体:
来源:转载
供稿:网友
package com.zking.contentresolver;import android.media.MediaPlayer;import android.net.Uri;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.ImageButton;import android.widget.SeekBar;import java.io.IOException;public class Playmusic extends AppCompatActivity {    PRivate SeekBar seekBar;    private MediaPlayer mediaPlayer;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);         setContentView(R.layout.activity_playmusic);        seekBar = (SeekBar) findViewById(R.id.seekBar);        seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {            @Override            public void onProgressChanged(SeekBar seekBar, int i, boolean b) {            }            @Override            public void onStartTrackingTouch(SeekBar seekBar) {            }            @Override            public void onStopTrackingTouch(SeekBar seekBar) {                //获取拖动结束之后的位置                int progress=seekBar.getProgress();                //跳转到某个位置播放                mediaPlayer.seekTo(progress);            }        });    }    public void isPlayOrPause(View view){        final ImageButton imageButton= (ImageButton) view;            if(mediaPlayer==null){                //项目的音乐播放//                mediaPlayer = MediaPlayer.create(this, R.raw.b);                try {//                    //播放内存的音乐//                    mediaPlayer.setDataSource(this,Uri.parse("file://mnt/sdcard/Music/music_dear1.mp3"));//                    //准备一下(内存卡)//                  mediaPlayer.prepare();                    //播放网络音乐                    mediaPlayer.setDataSource(this, Uri.parse("http://192.168.43.135/internet.mp3"));                    //准备(网络)                    mediaPlayer.prepareAsync();                } catch (IOException e) {                    e.printStackTrace();                }//                mediaPlayer.start();                //监听:准备完成的监听                mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {                    @Override                    public void onPrepared(MediaPlayer mediaPlayer) {                        mediaPlayer.start();                        //把图标修改为暂停的图标                        imageButton.setImageResource(android.R.drawable.ic_media_pause);                        //获取音乐的总时长                        int duration=mediaPlayer.getDuration();                        //设置进度条的最大值为音乐的总时长                        seekBar.setMax(duration);                        new Mythread().start();                    }                });            }else if(mediaPlayer.isPlaying()){                mediaPlayer.pause();//把图标修改为播放的图标                imageButton.setImageResource(android.R.drawable.ic_media_play);            }else{                mediaPlayer.start();                //把图标修改为暂停的图标                imageButton.setImageResource(android.R.drawable.ic_media_pause);            }    }    class Mythread extends Thread{        @Override        public void run() {            super.run();            while (seekBar.getProgress()<=seekBar.getMax()) {                //获取当前音乐播放的位置                int currentPosition = mediaPlayer.getCurrentPosition();                //让进度条动起来                seekBar.setProgress(currentPosition);            }        }    }

}

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:id="@+id/activity_playmusic"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context="com.zking.contentresolver.Playmusic">    <SeekBar        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:id="@+id/seekBar"        android:layout_weight="1" />    <ImageButton        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:src="@android:drawable/ic_media_play"        android:onClick="isPlayOrPause"        /></LinearLayout>


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表