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

SearchItem

UnityEditor.Search 中的类

建议更改

成功!

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

关闭

提交失败

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

关闭

取消

描述

搜索项目由搜索提供程序返回,以便在执行搜索后显示给用户。搜索项目包含用于排序和呈现搜索结果的所有数据。SearchItem 的某些成员可以在异步回调中指定(请参阅 SearchItem.fetchThumbnail、SearchItem.fetchDescription 等)。

SearchItem 通常使用 SearchProvider.CreateItem 函数创建。此示例演示如何使用所有成员创建 SearchItem。

[SearchItemProvider]
internal static SearchProvider CreateProvider()
{
    return new SearchProvider(id, name)
    {
        filterId = "hex:",
        priority = 99999, // put example provider at a low priority
        showDetailsOptions = ShowDetailsOptions.Description | ShowDetailsOptions.Preview,
        fetchItems = (context, items, provider) =>
        {
            var expression = context.searchQuery;
            if (expression.Length == 6 && IsHex(expression))
            {
                expression = "#" + expression;
                items.Add(provider.CreateItem(context, expression, GetColorName(expression),
                    "Look at this " + GetColorName(expression) + " color!",
                    CreateTextureFromColor(expression, 64, 64), null));
            }
            return null;
        },
        fetchPreview = (item, context, size, options) =>
        {
            return CreateTextureFromColor(item.id, (int)size.x, (int)size.y);
        },
    };
}

静态属性

clear表示无的搜索项目,通常用于清除选择。

属性

context用于创建该项目的上下文。
data搜索提供程序定义的内容。它可用于将任何数据传输到自定义搜索提供程序处理程序(例如 `fetchDescription`)。
description如果未提供描述,则在首次显示项目时将调用 SearchProvider.fetchDescription。
id搜索项目对于搜索提供程序的唯一 ID。
label搜索项目的显示名称。
options指示如何显示和使用搜索项目的标志。
preview搜索项目的大预览。通常由 fetchPreview 缓存。
provider指向搜索提供程序的反向指针。
score项目相关性分数将影响搜索提供程序如何对项目进行排序。得分较低的项目具有更高的相关性,并且优先考虑。
this[string]用于获取项目字段值的运算符。
thumbnail如果未提供缩略图,则在首次显示项目时将调用 SearchProvider.fetchThumbnail。
value选择字段时,搜索表达式系统设置的值。

构造函数

SearchItem构造一个搜索项目。对于给定的搜索查询,搜索项目至少需要一个唯一 ID。

公共方法

CompareTo检查两个 SearchItem 是否具有相同的 ID。
Equals检查两个 SearchItem 是否具有相同的 ID。
GetDescription获取并格式化描述。
GetFieldCount返回存储在搜索项目中的字段数量。
GetFieldNames返回所有字段名称的列表。
GetFields枚举所有搜索项目的字段。
GetHashCodeSearchItem 的默认哈希值。
GetLabel获取并格式化标签。
GetPreview如果可用,则获取搜索项目预览,否则此时获取预览。
GetThumbnail如果可用,则获取搜索项目的缩略图,否则此时获取缩略图。与网格视图相比,缩略图通常用于列表视图。
GetValue获取给定字段的默认搜索项目值。
RemoveField删除项目字段。
SetField设置字段值和别名。
ToObject返回搜索项目持有的任何有效的 Unity 对象。
TryGetField如果可用,则返回项目字段。
TryGetValue返回字段的值(如果有)。与 SearchItem.TryGetField 相比,此方法还解析了内置字段,例如 id、label、description、value 等。