首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

音乐播发(游戏中的音效)

2012-07-04 
音乐播放(游戏中的音效)音乐播放(游戏中的音效)游戏中是肯定和程序打包发布的。这样的音乐就没有放在Sdcard

音乐播放(游戏中的音效)
音乐播放(游戏中的音效)


游戏中是肯定和程序打包发布的。这样的音乐就没有放在Sdcard中,一般会放在应用目录下的“res/raw”下。那如何实现音乐播放呢?
其实很简单呐,我只不过把setDataSource()方法改成create()方法来指定资源索引的MediaPlayer对象。


package com.zzl.mediaplayer;import android.app.Activity;import android.media.MediaPlayer;import android.media.MediaPlayer.OnCompletionListener;import android.os.Bundle;import android.view.KeyEvent;import android.view.View;import android.view.View.OnClickListener;import android.widget.ImageButton;import android.widget.TextView;/** * 河北、衡水市、武强县 3月16日晚 * zzl */public class Mp32Activity extends Activity {/** Called when the activity is first created. */private TextView text = null;private ImageButton Start = null;private ImageButton Pause = null;private ImageButton Stop = null;private MediaPlayer mediaPlayer = null;private boolean isPlaying = false;private boolean isPaused = false;private boolean isReleased = false;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);// 构建MediaPlayer对象mediaPlayer = new MediaPlayer();text = (TextView) findViewById(R.id.text);Start = (ImageButton) findViewById(R.id.Start);Start.setOnClickListener(new StartListener());Pause = (ImageButton) findViewById(R.id.Pause);Pause.setOnClickListener(new PauseListener());Stop = (ImageButton) findViewById(R.id.Stop);Stop.setOnClickListener(new StopListener());}// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++// 开始播放private class StartListener implements OnClickListener {public void onClick(View v) {if (!isPlaying) {mediaPlayer = MediaPlayer.create(Mp32Activity.this, R.raw.f4);mediaPlayer.setLooping(true);mediaPlayer.start();text.setText("音乐正在播放中......");isPlaying = true;isReleased = false;isPaused = false;mediaPlayer.setOnCompletionListener(new OnCompletionListener() {public void onCompletion(MediaPlayer mp) {mediaPlayer.release();}});}}}// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++// 暂停private class PauseListener implements OnClickListener {public void onClick(View v) {if (mediaPlayer != null) {if (!isReleased) {if (!isPaused) {mediaPlayer.pause();isPaused = true;isPlaying = true;text.setText("播放暂停中......");} else {mediaPlayer.start();isPaused = false;isPlaying = true;text.setText("播放重新播放......");}}}}}// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++// 停止private class StopListener implements OnClickListener {public void onClick(View v) {if (isPlaying) {if (!isReleased) {mediaPlayer.stop();mediaPlayer.release();isReleased = true;}isPlaying = false;text.setText("播放停止......");}}}// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK) {if (!isReleased) {mediaPlayer.stop();mediaPlayer.release();isReleased = true;}this.finish();return true;}return super.onKeyDown(keyCode, event);}}

热点排行