- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
看看这个简单的代码:
function Start()
{
yield WaitForSeconds (4);
Application.LoadLevel(1);
}
有效!我正在尝试使用 C# 做一些类似的事情,但处理器只是忽略了 WaitForSeconds。这是我在 C# 中的代码:
using UnityEngine;
using System.Collections;
public class openingC : MonoBehaviour
{
void Start()
{
executeWait(5);
Application.LoadLevel(1);
}
void executeWait(float aux)
{
StartCoroutine(Wait(aux));
}
IEnumerator Wait(float seconds)
{
yield return new WaitForSeconds(seconds);
}
}
有人可以向我解释为什么它不起作用吗?感谢您的宝贵时间。
最佳答案
public class openingC : MonoBehaviour
{
void Start()
{
executeWait(5);
Application.LoadLevel(1);
}
void executeWait(float aux)
{
StartCoroutine(Wait(aux));
}
IEnumerator Wait(float seconds)
{
yield return new WaitForSeconds(seconds);
}
}
首先,Start方法运行,executeWait被调用,程序跳转到该方法。它找到协程并开始运行它,直到找到 yield 或方法结束。 Yield 返回到程序,指针返回到 executeWait 并完成该方法。指针返回到 Start 并调用 Application.LoadLevel。
您想挂起 LoadLevel 调用。
public class openingC : MonoBehaviour
{
void Start()
{
StartCoroutine(Wait(5));
}
//You don't need executeWait
IEnumerator Wait(float seconds)
{
yield return new WaitForSeconds(seconds);
Application.LoadLevel(1);
}
}
关于c# - C# 上的 WaitForSeconds,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34242353/
我的协程函数只能运行一次。 _isPaused 变量为 true。找不到我做错了什么。 IEnumerator Movement() { while (_isPaused) // I chec
我想在开始时隐藏一个按钮并让它在一定时间后再次激活。但是,对 WaitForSeconds() 的调用不起作用。 我试过以下方法: 让其他方法调用 WaitForSeconds 从其他脚本访问 boo
我有一个协程的 IEnumerator,它生成这样的对象 public IEnumerator spawnCoroutine; private float spawnObstacleTimer; vo
我有一个有四个场景的游戏,一个菜单场景,一个加载场景,和两个游戏场景。一切都很好,当我从我的菜单场景转换到我的游戏场景时,但是每当我从我的游戏场景转换回我的菜单场景或重新加载游戏场景时,加载场景就会停
当我完成关卡时,它必须显示“关卡已完成!”文本并等待 5 秒然后开始下一关。 private void showSuccess() { levelCompleted.SetActiv
我正在尝试在我的游戏中使用 WaitForSeconds() 来执行一个场景。我很乐意在这里改进和解决不工作的 WaitForSeconds() (它只是在我开始使用 WaitForSeconds()
我正在开发一些飞行模拟器程序。现在我正试图让关卡在延迟 4 秒后重新启动,但它一直在等待并且没有响应。这是我现在的代码(在 C# 中): void Update () { //other ir
看看这个简单的代码: function Start() { yield WaitForSeconds (4); Application.LoadLevel(1); } 有效!我正在尝试
我可能会问一些非常明显的问题,但我忽略了一些事情,但我试图在它做某事之前暂停一下。 我在网上看到很多地方都在使用这个- yield WaitForSeconds(2); 但是我得到一个语法错误, "E
我正在为 google cardboard 开发一款 rhythm VR 游戏,灵感来自 PSVR 和 Oculus Rift 上的 Beat Saber。 这个概念是,随着音乐的节奏,不同方向的方
我正在为我的 UI 元素制作一个简单的动画。 我有一个动画组件,它有 2 个不同的动画 - ZoomIn 和 ZoomOut。 每当需要在屏幕上显示 UI 元素(例如按钮)时,就会显示这些动画。 我通
C++ 中是否有一个函数会延迟它正在运行的函数一段时间,类似于 C# 中的 WaitForSeconds?我知道 sleep ,但这会暂停整个程序,我只想暂停一个功能。 最佳答案 这取决于您的程序体系
在下面的代码中,我有一个敌人出现和消失的循环。 IEnumerator EnemyCycle() { while (isRepeating) { for (int j = 0; j ().mat
我在 Unity 中遇到了一个问题。我没有更改我的脚本或场景中的任何内容,但它自己发生了问题。我很困惑,粒子和动画师也不起作用。当我通过按钮重新加载场景时,所有脚本、粒子和动画师都能完美运行。 voi
我正在尝试制作一款平台游戏,我想在 x 秒后禁用平台重力。但是它给出了一个编译错误,它不能被使用,因为 void 不是内部接口(interface)类型。 private void OnCollisi
我是 Unity 引擎的新手,我正在尝试使用 waitforseconds 函数,但它似乎不起作用。非常感谢任何帮助。 代码: IEnumerator SetCountText(){
我有一个奇怪的问题。我的代码工作正常。一切正常,直到最后一次通过 foreach 循环。编码: public List waveInput = new List(); //die Eingabe de
我的游戏中有跳跃恐吓。我正在使用 Unity 3D。我的第一个功能是 public void ScareMe(Vector3 pos) { //it does some necessary i
以下是我的代码: void Start () { Debug.Log("before"); StartCoroutine(CharTooLong()); Debug.Log("
我决定创建一个像游戏一样的小内存,用unity3d学习游戏开发。 游戏应该在玩家点击纸牌后等待 2 秒,然后再翻转纸牌。 yield return new WaitForSeconds(2) 语句应该
我是一名优秀的程序员,十分优秀!