官方文档部分解释:
1)Music
instances are heavy, you should usually not have more than one or two at most loaded.
A Music
instance needs to be disposed if it is no longer needed, to free up resources.
Music实例是重量级的,你最多不要创建唱过2个以上的Music实例。当你不再使用music实例的时候,Music实例需要dispose(销毁)。
二、应用举例
package com.example.groupactiontest;
import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.Input.Keys;
import com.badlogic.gdx.Input.Peripheral;
import com.badlogic.gdx.audio.Music;
import com.badlogic.gdx.graphics.GL10;
public class MyGame implements ApplicationListener {
Music music;
float position ;
@Override
public void create() {
music = Gdx.audio.newMusic(Gdx.files.internal("rain.mp3"));//加载音乐
music.play();
// music.setVolume(15f);//play()之后一定要设置音量,否则很可能听不到声音
music.setVolume(0.5f);//设置音量是最大值的一半
// music.play();//播放音乐
// music.setVolume(15f);//设置音量大小
// music.setLooping(true);//设置是否循环播放
// music.stop();//停止音频.音乐为位置回到0
// music.pause();//暂停音频.音乐的位置是暂停时的那个位置
// music.play();//播放音乐
// boolean isPlaying = music.isPlaying();//判断音乐是否正在播放
// boolean isLooping = music.isLooping();//判断音乐是否循环播放
// position = music.getPosition();//获取音频现在播放到的位置
//
// System.out.println("isPlaying: " + isPlaying);
// System.out.println("isLooping: " + isLooping);
}
@Override
public void dispose() {
// TODO Auto-generated method stub
}
@Override
public void pause() {
// TODO Auto-generated method stub
}
@Override
public void render() {
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
if(music.getPosition() > 6){
// music.stop();
music.pause();
System.out.println("position:----》 " + music.getPosition());
}
}
@Override
public void resize(int arg0, int arg1) {
// TODO Auto-generated method stub
}
@Override
public void resume() {
// TODO Auto-generated method stub
}
}
四、源码下载
http://download.csdn.net/detail/caihongshijie6/7052069