public void LoadWWW(string path, OnCallBackWWW callBack) { if (string.IsNullOrEmpty(path)) { if (callBack != null) { callBack(null); } return; } wwwCallBackDic[path] = callBack; coroutinesDic[path] = StartCoroutine(OnLoadWWW(path)); }
IEnumerator OnLoadWWW(string path) { WWW www = new WWW(path); yield return(www); if (wwwCallBackDic != null && wwwCallBackDic.ContainsKey(path)) { OnCallBackWWW callBack = wwwCallBackDic[path]; if (callBack != null) { if (www.bytes == null || www.bytes.Length == 0) { callBack(null); } else { callBack(www); } wwwCallBackDic.Remove(path); www.Dispose(); } } }