Version: 2023.2

SearchTable

class in UnityEditor.Search

切换到手册

描述

A search table configuration is used to define the columns when search results are displayed in table view.

static SearchTable CreateDecalsTableConfiguration()
{
    return new SearchTable("decals", new SearchColumn[]
    {
        new SearchColumn("DecalsName0", "label", "name", new GUIContent("Name", GetMaterialIcon())) { width = 160 },
        new SearchColumn("DecalsShader1", "#shader", "name", new GUIContent("Shader", GetShaderIcon())) { width = 150 },
        new SearchColumn("DecalsBaseColor1", "#_BaseColor", "color", new GUIContent("Color", GetShaderIcon())) { width = 130 },
    });
}

The previous example can be used when creating a SearchViewState.

var selectHandler = args.selectorClosedHandler;
var trackingHandler = args.trackingHandler;
var query = SearchService.CreateContext(CreateDecalProvider(), $"a={dbName} t={selectContext.requiredTypeNames.First()} shader=Decal");
var viewState = new SearchViewState(query, CreateDecalsTableConfiguration(),
    SearchViewFlags.TableView |
    SearchViewFlags.OpenInBuilderMode |
    SearchViewFlags.DisableSavedSearchQuery);
viewState.windowTitle = new GUIContent("Material Decals", GetMaterialIcon());
viewState.hideAllGroup = true;
viewState.title = "decals";
viewState.selectHandler = (item, canceled) => selectHandler(item?.ToObject(), canceled);
viewState.trackingHandler = (item) => trackingHandler(item?.ToObject());
viewState.position = SearchUtils.GetMainWindowCenteredPosition(new Vector2(600, 400));
SearchService.ShowPicker(viewState);

变量

columnsSearch columns displayed in table view.
idUnique id of the search table used for persistance.
nameDisplay name of the search table used for serialization.

构造函数

SearchTableCreates a new search table configuration.

公共函数

CloneCreates a copy of the search table configuration.
InitFunctorsInitialize all search columns functors based on their format provider.

静态函数

LoadFromFileLoad a search table configuraiton from a JSON file.
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961