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

OnDemandResourcesRequest

UnityEngine.iOS 中的类

/

继承自:AsyncOperation

/

实现于:UnityEngine.CoreModule

建议修改

成功!

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

关闭

提交失败

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

关闭

取消

描述

表示对按需资源 (ODR) 的请求。它是一个AsyncOperation,可以在协程中使用 yield 关键字等待其完成。

注意:仅在 iOS 上可用。

创建OnDemandResourcesRequest 等效于调用 NSBundleResourceRequest.beginAccessingResourcesWithCompletionHandler 。该请求将保持按需资源处于活动状态,直到调用Dispose() 或垃圾回收器回收请求对象,这等效于调用NSBundleResourceRequest.endAccessingResources

using UnityEngine;
using UnityEngine.iOS;
using System;
using System.Collections;

public static class Loader { public static IEnumerator LoadAsset(string resourceName) { // Create the request var request = OnDemandResources.PreloadAsync(new string[] { "Asset's ODR tag" });

// Wait until request is completed yield return request;

// Check for errors if (request.error != null) throw new Exception("ODR request failed: " + request.error);

// Get path to the resource and use it var path = request.GetResourcePath(resourceName); Debug.Log(path);

// Call Dispose() when resource is no longer needed. request.Dispose(); } }

属性

error操作完成后返回错误。
loadingPriority设置请求的优先级。

公共方法

Dispose释放按需资源 (ODR) 请求保持活动状态的所有资源。
GetResourcePath获取按需资源 (ODR) 请求中可用资源的文件系统路径。

继承的成员

属性

allowSceneActivation允许场景在准备就绪后立即激活。
isDone操作是否已完成?(只读)
priority优先级允许您调整异步操作调用的执行顺序。
progress操作的进度。(只读)

事件

completed操作完成后调用的事件。在创建该调用的同一帧中注册的事件处理程序将在下一帧调用,即使该操作能够同步完成也是如此。如果在操作完成后并且已经调用了 complete 事件后注册了处理程序,则将同步调用该处理程序。