Unity UGUI简单的音频播放+读歌词(实现类似 QQ音乐,网易云音乐歌词滚动)
Unity UGUI简单的音频播放+读歌词(实现类似 QQ音乐,网易云音乐歌词滚动)
-
效果图 (demo下载地址 demo下载地址)
-
简单代码
/// <summary> /// 解析数据歌词 /// </summary> /// <param name="dataList">数据</param> /// <returns></returns> void ProcessingData(List<string> dataList) { // 所有数据 for (int i = 0; i < dataList.Count; i++) { string[] strarry = dataList[i].Split(new char[] { '[', ']' }); if (strarry != null && strarry.Length > 0) { for (int j = 1; j < strarry.Length; j++) { string tempstr = strarry[j]; //这是标题 --- 创作者 if (tempstr.StartsWith("ti") || tempstr.StartsWith("ar") || tempstr.StartsWith("al") || tempstr.StartsWith("by") || tempstr.StartsWith("offset")) { string[] strarry1 = tempstr.Split(':'); //valuePairs.Add(strarry1[0], strarry1[1]); } else { //这是内容 if (tempstr.Contains(":")) { string[] strarry1 = tempstr.Split(':'); float m = float.Parse(strarry1[0]) * 60; float s = float.Parse(strarry1[1]); //ms ms = (m + s).ToString(); //Debug.Log(ms); //时间 floattimelist.Add(m + s); } else { //句子 stringlyriclist.Add(tempstr); } } } } } }
/// <summary> /// 显示移动lyric位置 /// </summary> /// <param name="index"></param> void ShowLrc(int index) { if (index >= stringlyriclist.Count / 4) { temp -= offest; if (temp >= 0) { ScrollRect.verticalNormalizedPosition = temp; Debug.Log(temp); } } texts[index].color = Color.green; if (index > 0 && index < stringlyriclist.Count) { texts[index - 1].color = Color.gray; } }
-
文章最后附上(demo下载地址 demo下载地址)
X himself: 能否分享一个示例代码呢?急求
普通网友: 您好 可以让另外一个app在后台持续传输数据吗
小小白null: 版本问题
u014543557: 安卓端可以用吗