版本: Unity 6 (6000.0)
语言English
  • C#

WaitWhile 构造函数

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们会阅读用户提出的每个建议更改,并在适用时进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public WaitWhile(Func<bool> predicate);

参数

predicate MonoBehaviour.Update 之后和 MonoBehaviour.LateUpdate 之前,每个帧都会评估提供的委托,直到委托返回 false

描述

使用给定的委托初始化一个 yield 指令以进行评估。


声明

public WaitWhile(Func<bool> predicate, TimeSpan timeout, Unity.Android.Gradle.Manifest.Action onTimeout, WaitTimeoutMode timeoutMode);

参数

predicate MonoBehaviour.Update 之后和 MonoBehaviour.LateUpdate 之前,每个帧都会评估提供的委托,直到委托返回 false
timeout 在实例创建后,等待 predicate 返回 false 的最长时间。
onTimeout 达到 timeout 时要执行的操作。仅当 predicate 在指定的最大时间之前未能返回 false 时执行。
timeoutMode 用于测量时间以确定 timeout 的模式。默认情况下为实时。可以设置为游戏内时间,该时间根据 Time.timeScale 的值进行缩放。

描述

使用给定的委托初始化一个 yield 指令以进行评估。

using UnityEngine;
using System;
using System.Collections;

public class WaitWhileExample : MonoBehaviour { public bool buttonPressed;

void Start() { StartCoroutine(Example()); }

IEnumerator Example() { Debug.Log("Waiting for button to be pressed..."); yield return new WaitWhile(() => !buttonPressed, TimeSpan.FromSeconds(3), () => Debug.Log("button was not pressed in time!")); } }