您的位置:首页 > 移动开发 > Unity3D

Unity延迟执行一段代码的较为优雅的方式

2015-09-10 13:01 423 查看
===============================================

using UnityEngine;using System.Collections;using System;

public class DelayToInvoke :MonoBehaviour{

public static IEnumeratorDelayToInvokeDo(Action action, float delaySeconds){yield return new WaitForSeconds(delaySeconds);action(); //最好IF判断一下不为空}}

===============================================

如何使用呢?
比如我点击NGUI的一个Button,则
void OnClick()
{
StartCoroutine(DelayToInvoke.DelayToInvokeDo(() =>
{
Application.LoadLevel(“Option”);
}, 0.1f));
}
看到了吧
Application.LoadLevel(“Option”);就是想要延时执行的代码段。
你可以写很长很长。Action,随便搞。
原文地址:http://www.unitymanual.com/thread-25542-1-1.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: