利用MEDIAPLAYER制作ANDROID播放器

ndroid可以播放手机内存中的音乐和存储卡上的音乐,播放声音主要是利用android.media.MediaPlayer类播放各种声音。下面是利用这个类完成的一个简陋的播放器:

   image

点击开始能够播放声音,停止可以停止播放音乐,暂停可以停止播放声音。其实现代码如下:

主要是播放代码:

 

package com.easymorse;

import android.app.Activity; 
import android.media.MediaPlayer; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.ImageButton; 
import android.widget.TextView; 
import android.widget.Toast;

public class myplayer extends Activity { 
    private ImageButton mButton01, mButton02, mButton03; 
    private TextView textView; 
    private MediaPlayer mediaPlayer; 
    // 判断是否为暂停状态 
    private boolean bIsPaused = false;

    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main); 
        mButton01 = (ImageButton) findViewById(R.id.myButton1); 
        mButton02 = (ImageButton) findViewById(R.id.myButton2); 
        mButton03 = (ImageButton) findViewById(R.id.myButton3); 
        textView = (TextView) findViewById(R.id.myTextView1); 
       mediaPlayer = new MediaPlayer(); 
        mediaPlayer = MediaPlayer.create(myplayer.this, R.raw.big); 
        mButton01.setOnClickListener(new ImageButton.OnClickListener() { 
            @Override 
            public void onClick(View v) { 
                try { 
                    if (mediaPlayer != null) { 
                        mediaPlayer.stop(); 
                    } 
                    // 开始播放音乐 
                    mediaPlayer.prepare(); 
                    mediaPlayer.start(); 
                    Toast.makeText(myplayer.this, "正在播放音乐", Toast.LENGTH_SHORT) 
                            .show(); 
                    textView.setText(R.string.str_start); 
                } catch (Exception e) { 
                    textView.setText(e.toString()); 
                    e.printStackTrace(); 
                } 
            } 
        }); 
        mButton02.setOnClickListener(new ImageButton.OnClickListener() { 
            @Override 
            public void onClick(View v) { 
                if (mediaPlayer != null) { 
                    // 停止播放 
                    mediaPlayer.stop(); 
                    textView.setText(R.string.str_close); 
                } 
            } 
        }); 
        mButton03.setOnClickListener(new ImageButton.OnClickListener() { 
            @Override 
            public void onClick(View v) { 
                // 暂停状态 
                if (mediaPlayer != null) { 
                    if (!bIsPaused) { 
                        /* 暂停播放 */ 
                        mediaPlayer.pause(); 
                        bIsPaused = true; 
                        textView.setText(R.string.str_pause); 
                    } else { 
                        /* 回复播出状态 */ 
                        mediaPlayer.start(); 
                        bIsPaused = false; 
                        textView.setText(R.string.str_start); 
                    } 
                } 
            } 
        }); 
    }

    @Override 
    /* 覆盖主程序暂停状态事件 */ 
    protected void onPause() { 
        mediaPlayer.release(); 
        super.onPause(); 
    } 
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值