unity3d简单的音乐播放器
来源:互联网 发布:pyqt5 知乎问答 编辑:程序博客网 时间:2024/04/24 23:38
这几天用u3d做应用,感觉没效率,尽管它可以用C#写,但是感觉不行,所以我还是早点收手,不做应用了,把这几天做的一个小东西给大家玩玩,音乐播放器~~~
我就直接贴代码了哈,里面有一些注释的,呵呵~~~~但是手机上的编码问题没解决哦~~~有知道的同学,麻烦指点一下,我的qq:397319689(有点笨);
import System.IO;import System.Collections;import System.Text;var www : WWW;var file:ArrayList;var scrollPosition :Vector2= Vector2.zero;var scrollVelocity:float = 0f;var timeTouchPhaseEnded:float = 0f;var inertiaDuration:float = 0.5f;var lastDeltaPos:Vector2 ;var skin:GUISkin;function Start () { file=new ArrayList(); he("C:\\","*.mp3",file); }var play:Texture;var pause:Texture;var next:Texture;var last:Texture;var sound:Texture;function OnGUI(){ GUI.skin=skin; var y:int=0; scrollPosition = GUI.BeginScrollView( Rect(0, 0, Screen.width, Screen.height), scrollPosition, Rect(0, 0,Screen.width, file.Count*60), false, false); for(var f:String in file){ //把系统编码转成utf-8,因为android上是utf-8 var utf:Encoding =Encoding.UTF8;//utf-8 var gb:Encoding =Encoding.Default;//系统的编码 var temp:byte[] = gb.GetBytes(f); var temp1:byte[] = Encoding.Convert(gb, utf, temp); var f1:String=utf.GetString(temp1); //用lastindexof和substring方法获取文件名(不包括路径) var p:int=f1.LastIndexOf('\\',f1.Length-1); //必须是'\\',如果是‘\’会报错的。如果是手机要写‘/’ var f2:String=f1.Substring(p+1,f1.Length-1-p); var b=GUI.Button(Rect(0,y,Screen.width,60)," "+f2); if(b){ www=new WWW("file://"+f); //记住这里面的“//”别写成“\\”就行哈; audio.clip=www.audioClip; } y+=60; } GUI.EndScrollView(); }function Update (){ if(Input.touchCount > 0){ if(Input.GetTouch(0).phase == TouchPhase.Moved){ scrollPosition.y += Input.GetTouch(0).deltaPosition.y; lastDeltaPos = Input.GetTouch(0).deltaPosition; } else if (Input.GetTouch(0).phase == TouchPhase.Ended){ print ("End:"+lastDeltaPos.y+"|"+Input.GetTouch(0).deltaTime); if(Mathf.Abs(lastDeltaPos.y)> 20.0f){ scrollVelocity = lastDeltaPos.y * 0.5/ Input.GetTouch(0).deltaTime; print(scrollVelocity); } timeTouchPhaseEnded = Time.time; } } else{ if(scrollVelocity != 0.0f){ var t:float = (Time.time - timeTouchPhaseEnded)/inertiaDuration; var frameVelocity:float = Mathf.Lerp(scrollVelocity, 0, t); scrollPosition.y += frameVelocity * Time.deltaTime; if (t >= inertiaDuration) scrollVelocity = 0; } } if(Input.GetKey(KeyCode.Escape)){ Application.Quit(); } if(!audio.isPlaying) audio.Play();}function he(path:String,pattern:String,al:ArrayList){ if(path!=null){ var f1:String[]=Directory.GetFiles(path,pattern); var d1:String[]; for(var f11:String in f1){ al.Add(f11); } try{ d1=Directory.GetDirectories(path); for(var d11:String in d1){ try{ he(d11,pattern,al);} catch(Exception){} } }catch(Exception){} }}
- unity3d简单的音乐播放器
- 简单的音乐播放器
- 简单的音乐播放器
- 简单的音乐播放器
- 简单的音乐播放器
- 简单的音乐播放器
- 音频的播放、简单音乐播放器
- 简单的播放应用内音乐的音乐播放器
- 简单的音乐播放
- 简单的音乐播放
- 简单音乐播放器
- 简单音乐播放器
- 简单音乐播放器
- 简单~音乐播放器
- 一个简单的音乐播放器
- 最简单的音乐播放器
- Android--MediaPlayDemo简单的音乐播放器
- android-简单音乐播放器的总结
- 2009.07.26_小娃崽_VMP 之反 VM (还原代码) 之初初
- FB工程师成立Presence公司 推物联网技术
- MikroTik RouterOS应用事例讲解(一)
- 请问用ADO连接远程数据库的连接字符串是什么(转载)
- 20120502学习总结
- unity3d简单的音乐播放器
- 关于UNIX和Linux系统下SUID、SGID的解析
- vimtutor
- 关键路径的实现
- Android Listener侦听的N种写法
- linux shell使用经验
- Android动画开发——Animation动画效果
- 生命的答案水知道(只有部分图片,要全的图片自己还是的网上下个pdf看吧)
- hash算法--one-way hash