当前位置:   article > 正文

unity 3D音乐播放器_unity试题编号:h3-3:简单音乐播放器

unity试题编号:h3-3:简单音乐播放器

using UnityEngine;

using System.Collections;


public class Player : MonoBehaviour {
    //中文字体
    public GUISkin ChineseSkin;
    //音频文件
    public AudioSource[] MyAudio;
    //歌曲名称
    public string[] SongNames;
    //当前歌曲编号
    public string[] SongerNames;
    //当前歌曲编号
    int SongIndex = 0;
    //设定是否循环
    bool LoopPlay = true;
// Use this for initialization
void Start () {

}

// Update is called once per frame
void Update () {

}
    void OnGUI()
    {
        GUI.skin = ChineseSkin;
        if (GUI.Button(new Rect(10,10,50,30),"开始"))
        {
            MyAudio[SongIndex].Play();
        }
         if (GUI.Button(new Rect(70,10,50,30),"暂停"))
        {
            MyAudio[SongIndex].Pause();
        }
         if (GUI.Button(new Rect(130,10,50,30),"停止"))
        {
            MyAudio[SongIndex].Stop();
        }
         if (GUI.Button(new Rect(190,10,60,30),"上一首"))
        {
            ///方法一: 停止播放当前音乐
            //for (int i = 0; i < MyAudio.Length; i++)
            //{
            //    if (MyAudio[i].isPlaying)
            //    {
            //        MyAudio[i].Stop();
            //    }
            //}


            //方法二:停止当前播放音乐
            if (MyAudio[SongIndex].isPlaying)
            {
                MyAudio[SongIndex].Stop();
            }
             //上一曲
            if (SongIndex>0)
                SongIndex--;            
            else if(LoopPlay)
                SongIndex = MyAudio.Length - 1;
             //播放当前音乐
            MyAudio[SongIndex].Play();
        }
         if (GUI.Button(new Rect(260, 10, 60, 30), "下一首"))
         {
             //方法一: 停止播放当前音乐
             //for (int i = 0; i < MyAudio.Length; i++)
             //{
             //    if (MyAudio[i].isPlaying)
             //    {
             //        MyAudio[i].Stop();
             //    }
             //}


             //方法二:停止当前播放音乐
             if (MyAudio[SongIndex].isPlaying)
             {
                 MyAudio[SongIndex].Stop();
             }


             //下一曲
             if (SongIndex<MyAudio.Length-1)
                SongIndex++;
             else if (LoopPlay)
                SongIndex = 0;
             //播放当前音乐
             MyAudio[SongIndex].Play();
         }
        //选择是否进行循环
         GUI.contentColor = Color.red;
         LoopPlay = GUI.Toggle(new Rect(10, 45, 80, 30), LoopPlay, "循环播放");         


        //显示当前歌手和歌曲名称
         GUI.Label(new Rect(10, 80, Screen.width, 30), "当前歌曲名称:"+SongNames[SongIndex]);
         GUI.Label(new Rect(10, 115, Screen.width, 30), "歌手姓名"+SongerNames[SongIndex]);
         GUI.contentColor = Color.white;
    }

}

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/118435
推荐阅读
相关标签
  

闽ICP备14008679号