Pobieranie treści wyszukiwania
Dodaliśmy obsługę interfejsu użytkownika treści wyszukiwania w SDK.
Search Content to ogólne określenie obejmujące wiele typów funkcji treści. W następnych sekcjach znajdziesz instrukcje dotyczące żądania poszczególnych funkcji treści.
Powtórz wyszukiwanie
Wywołaj metodę getSearchContent obiektu ContextualSearchRuntime. Ta metoda przyjmuje jeden parametr GetSearchContentOptions, w którym możesz określić tekst, którego chcesz użyć do uzyskania treści wyszukiwania. Aby uzyskać powtórzenie wyszukiwania, prześlij tekst powtórzenia wyszukiwania do instancji GetSearchContentOptions.
Zwrócony obiekt SearchContents nie zawiera żadnych właściwości dostępnych.
Zawiera wszystkie informacje potrzebne do renderowania treści wyszukiwania, ale poza tym jest nieprzezroczysty.
SwiftUI
Task {
let sampleSearchRepeat = "search repeat text"
let options = GetSearchContentOptions(searchRepeat: sampleSearchRepeat)
let searchContents: SearchContents =
try await contextualSearchRuntime.getSearchContent(withOptions: options)
}
Objective-C
GetSearchContentOptions *options =
[[GetSearchContentOptions alloc] initWithSearchRepeat:@"sample search repeat"];
[_contextualSearchRuntime getSearchContentWithOptions:options
completionHandler:^(SearchContents *_Nullable contents,
NSError *_Nullable error) {
// error will be not null if there is an error.
// On success, contents will be non null.
}];
Wyświetlanie treści wyszukiwania
Aby wyświetlić treści wyszukiwania, użyj tych metod.
SwiftUI
var customizationOptions = SearchContentViewOptions()
...
VStack {
ForEach(searchContents.searchContentBlocks) { block in
SearchContentView(blockData: block, options: customizationOptions)
}
}
Objective-C
for (SearchContentBlockData *block in ((SearchContents *)_searchContents)
.searchContentBlocks) {
SearchContentViewController *blockView = [[SearchContentViewController alloc]
initWithOptions:[[SearchSuggestionsViewOptions alloc] init]];
blockView.blockData = block;
[_searchContentStackView addSubview:blockView.view];
[blockView addToViewController:self];
}