如何通过网络端下载一些资源,看完下面的内容,你会有所了解.
在上面的操作过程中其实显示的图片是从网络端获得过来的.点击了q键就会从网络端加载这个图片.
首先,我们了解一下协程吧!协程不是线程,也不是异步执行的,在MainThread中执行.控制代码在特定的时候执行.
协同程序可以和主程序并行运行,和多线程有点类似.协同程序可以用来实现让一段程序等待一段时间后继续运行的效果.
// Use this for initialization
void Start () {
print("789");
StartCoroutine(WorkHard());//在StartCoroutine方法中执行。
print("101112");
}
// Update is called once per frame
void Update () {
}
IEnumerator WorkHard()//一个返回值为IEnumerator类型
{
print("123");
yield return new WaitForSeconds(2f);//用yield return返回
print("456");
}
动态图的代码演示.
Texture2D t2d;
public string Url;
WWW www;//这是一个类
// Use this for initialization
void Start () {
Url = "http://ww2.sinaimg.cn/mw240/005OPYkojw1etn14eqlj8j30go0m8ab3.jpg";//网络上的图片资源
}
// Update is called once per frame
void Update () {
if (Input.GetKeyDown(KeyCode.Q))
{
StartCoroutine(GetWWW());
}
}
IEnumerator GetWWW()
{
www = new WWW(Url);
yield return www;
print("返回数据成功");
t2d = www.texture;//获取图片资源
}
private void OnGUI()
{
GUILayout.Label(Url);
GUILayout.TextArea(""+www);
GUILayout.Label(""+www);
GUI.DrawTexture(new Rect(100,100,100,100),t2d);//绘制图片的位置和大小
}