Suchinhalte abrufen
Wir haben die Unterstützung für die Benutzeroberfläche für Suchinhalte im SDK hinzugefügt.
Search Content ist ein allgemeiner Begriff für verschiedene Arten von Inhaltsfunktionen. In den folgenden Abschnitten erfahren Sie, wie Sie die einzelnen Arten von Inhaltsfunktionen anfordern können.
Suche wiederholen
Rufen Sie die Methode getSearchContent für ContextualSearchRuntime auf. Diese Methode verwendet einen einzelnen GetSearchContentOptions, in dem Sie den Text angeben können, für den Suchinhalte abgerufen werden sollen. Wenn Sie den Suchvorgang wiederholen möchten, übergeben Sie den entsprechenden Text an die GetSearchContentOptions-Instanz.
Das zurückgegebene SearchContents-Objekt enthält keine zugänglichen Eigenschaften.
Sie enthält alle erforderlichen Informationen zum Rendern von Suchinhalten, ist aber ansonsten undurchsichtig.
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.
}];
Suchinhalte anzeigen
Verwenden Sie die folgenden Methoden, um Suchinhalte anzuzeigen.
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];
}