Unity3D简单的音乐播放器【代码】-创新互联
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); //Unity3D:www.unitymanual.com 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简单的音乐播放器【代码】
成都创新互联公司是一家集网站建设,博州企业网站建设,博州品牌网站建设,网站定制,博州网站建设报价,网络营销,网络优化,博州网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
分享标题:Unity3D简单的音乐播放器【代码】-创新互联
文章源于:http://cdiso.cn/article/cepped.html