INExtension.GetHandler(INIntent) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Les développeurs remplacent cette méthode pour renvoyer l’objet gestionnaire s’il intent
en est un auquel leur extension peut répondre.
[Foundation.Export("handlerForIntent:")]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 10, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.WatchOS, 3, 2, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Unavailable(ObjCRuntime.PlatformName.MacOSX, ObjCRuntime.PlatformArchitecture.All, null)]
public virtual Foundation.NSObject GetHandler (Intents.INIntent intent);
abstract member GetHandler : Intents.INIntent -> Foundation.NSObject
override this.GetHandler : Intents.INIntent -> Foundation.NSObject
Paramètres
Retours
L’objet de gestionnaire du développeur ou null
si intent
n’est pas géré par l’extension.
Implémente
- Attributs
Remarques
L’objet gestionnaire du développeur doit implémenter l’interface IIN{Intent}Handling
appropriée aux types pour INIntent lesquels cette méthode retourne le gestionnaire. Exemple :
class MyExtension : INExtension
{
override public NSObject GetHandler (INIntent intent)
{
if (intent is INSendMessageIntent)
{
return new MySendMessageHandler ();
}
return null;
}
}
class MySendMessageHandler : NSObject, IINSendMessageIntentHandling
{
public void HandleSendMessage (INSendMessageIntent intent, Action<INSendMessageIntentResponse> completion)
{
// ... Send a message here ...
var activity = new NSUserActivity (nameof (INSendMessageIntent));
var response = new INSendMessageIntentResponse (INSendMessageIntentResponseCode.Success, activity);
completion (response);
}
}