Search items are returned by the search provider to show to the user after a search is performed. The search item holds all the data that is used to sort and present the search results. Some members of a SearchItem can be specified in an asynchronous callback (see SearchItem.fetchThumbnail, SearchItem.fetchDescription, etc).
SearchItems are generally created using the SearchProvider.CreateItem function. This example shows how to create a SearchItem with all the members.
[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 | A search item representing none, usually used to clear the selection. |
context | Context used to create that item. |
data | Search provider defined content. It can be used to transport any data to custom search provider handlers (i.e. `fetchDescription`). |
description | If no description is provided, SearchProvider.fetchDescription will be called when the item is first displayed. |
id | Unique ID of the search item for the search provider. |
label | Display name of the search item. |
options | Flags that dictate how the search item is displayed and used. |
preview | Large preview of the search item. Usually cached by fetchPreview. |
provider | Back pointer to the search provider. |
score | The item relevance score will affect how the item gets sorted by the search provider. Lower scored items have more relevance and are prioritzed. |
thumbnail | If no thumbnail is provided, SearchProvider.fetchThumbnail is called when the item is first displayed. |
SearchItem | Construct a search item. A search item needs to have at least a unique ID for a given search query. |
CompareTo | Check if two SearchItems have the same ID. |
Equals | Check if two SearchItems have the same ID. |
GetDescription | Fetch and format description. |
GetHashCode | Default Hash of a SearchItem. |
GetLabel | Fetch and format label. |
GetPreview | Gets the search item preview if available, otherwise the preview is fetched at this time. |
GetThumbnail | Gets the search item thumbnail if available, otherwise the thumbnail is fetched at this time. The thumbnail is usually used in list view compared to the grid view. |
ToObject | Returns any valid Unity Object held by the search item. |
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.