ObjCRuntime Espace de noms

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

Classes

Nom Description
AdoptsAttribute

Attribut utilisé pour spécifier qu’une classe adopte un protocole Objective-C spécifique.

AssemblyRegistrationEventArgs

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

BaseWrapper

Classe de base utilisée par le générateur de liaisons pour générer des types wrapper de protocole.

BindAsAttribute

BindAsAttribute permet de lier des types NSNumber, NSValue et NSString natifs (pour les énumérations) en types managés plus précis.

BindingImplAttribute

Cet attribut fournit des informations sur le code de liaison.

BlockCallbackAttribute

Cet attribut est appliqué aux paramètres délégués d’un délégué pour spécifier que le paramètre délégué a besoin d’un pont de style bloc Objective-C.

BlockProxyAttribute

Cet attribut est utilisé pour notifier le runtime utilisé pour encapsuler des blocs Objective-C dans des délégués managés.

CategoryAttribute

Attribut utilisé pour marquer une classe en tant que catégorie qui étend un autre type.

CCallbackAttribute

Cet attribut est appliqué aux paramètres délégués dans un délégué pour spécifier que le paramètre délégué a besoin d’un pont de style C.

Class

Représentation managée pour une classe Objective-C.

Constants

Constantes globales vers les bibliothèques système.

DelayedRegistrationAttribute

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

DelegateProxyAttribute

Cet attribut est utilisé pour notifier le runtime utilisé pour encapsuler les délégués managés dans des blocs Objective-C.

DesignatedInitializerAttribute

Cet attribut est utilisé pour marquer les constructeurs managés qui lient Objective-C initialiseurs marqués avec l’attribut NS_DESIGNATED_INITIALIZER.

DisposableObject

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

Dlfcn

Fournit l’accès à l’éditeur de liens dynamiques

LinkWithAttribute

Un attribut LinkWith spécifie la façon dont la bibliothèque native associée à l’assembly doit être liée à l’application résultante.

MarshalManagedExceptionEventArgs

Arguments d’événement pour l’événement MarshalManagedException .

MarshalObjectiveCExceptionEventArgs

Arguments d’événement pour l’événement MarshalObjectiveCException .

MonoNativeFunctionWrapperAttribute

Attribut à appliquer aux délégués pour les marquer comme cibles qui peuvent être utilisées avec GetDelegateForFunctionPointer(IntPtr, Type).

MonoPInvokeCallbackAttribute

Attribut utilisé pour annoter les fonctions qui seront appelées à partir du monde non managé.

NativeAttribute

Cet attribut indique au runtime Xamarin.iOS que l’énumération native liée à cette énumération managée utilise une taille native pour la plateforme comme taille pour chaque valeur d’énumération (c’est-à-dire une valeur 32 bits sur des architectures 32 bits et une valeur 64 bits sur des architectures 64 bits).

NativeNameAttribute

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

NativeObjectExtensions

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

NMath

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

ObjCException

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

ObjectiveCFrameworkAttribute

Cet attribut indique au runtime auquel appartient Objective-C framework auquel appartient un type donné.

Protocol

Représentation d’un protocole Objective-C.

ReleaseAttribute

Cet attribut indique que la valeur de retour d’une fonction est conservée (l’appelant obtient une référence à l’objet retourné).

RequiredFrameworkAttribute

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

RequiresSuperAttribute

Cet attribut est appliqué aux méthodes qui doivent appeler leur implémentation de base lorsqu’elles sont remplacées.

Runtime

Fournit des informations sur le runtime Xamarin.iOS.

Runtime.ClassHandles

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

RuntimeException

Classe qui représente une exception qui se produit dans le runtime Xamarin.

Selector

Représente un sélecteur Objective-C dans le code managé.

SupportedSimulatorAttribute

Indique qu’une API est prise en charge pour une plateforme spécifiée. Si une version est spécifiée, l’API est disponible à partir de la version du système d’exploitation spécifiée. Plusieurs attributs peuvent être appliqués pour indiquer la prise en charge sur plusieurs systèmes d’exploitation.

ThreadSafeAttribute

Indique Attribute qu’une méthode ou une classe UIKit (pour iOS) ou AppKit (pour macOS) est thread-safe.

ThrowHelper

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

TrampolineBlockBase

Type de base pour les blocs de trampoline Objective-C.

TransientAttribute

Signale un paramter dans une sous-classe NSObject comme étant temporaire.

TypeConverter

Convertit Objective-C encodages de type en types managés et inversement.

UnsupportedSimulatorAttribute

Indique qu’une API n’est pas prise en charge dans le simulateur pour la plateforme spécifiée. Plusieurs attributs peuvent être appliqués pour indiquer l’absence de prise en charge sur plusieurs plateformes.

UserDelegateTypeAttribute

Cet attribut est utilisé sur les délégués créés par le générateur de liaison pour mapper correctement entre les signatures des blocs Objective-C et leurs délégués managés exposés correspondants.

Lors de la liaison Objective-C blocs, le générateur de liaison crée un délégué managé dont la signature équivaut à la signature du bloc correspondant pour le code de liaison requis. Toutefois, cette signature n’est pas nécessairement suffisamment précise pour recréer la signature du bloc au moment de l’exécution (ce qui est nécessaire dans certaines circonstances). Cet attribut permet de rechercher le type du délégué managé correspondant exposé par les liaisons générées, qui disposent de suffisamment d’informations pour recréer la signature du bloc correspondant.

Structures

Nom Description
BlockLiteral

Encapsule un délégué CLI ECMA (lambdaS C#, méthodes anonymes ou délégués) en tant que bloc Objective-C.

NativeHandle

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

Interfaces

Nom Description
INativeObject

Interface simple utilisée pour exposer le pointeur d’objet non managé dans différentes classes dans Xamarin.iOS.

Énumérations

Nom Description
Arch

Utilisé pour représenter l’hôte sur lequel cette application est en cours d’exécution.

ArgumentSemantic

Représente la sémantique d’affectation pour les propriétés.

BindingImplOptions

Cette énumération est utilisée par le type pour fournir des informations sur le BindingImplAttribute code de liaison.

Dlfcn.Mode

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

Dlfcn.RTLD

Indicateurs de résolution de chargeur dynamique.

DlsymOption

Permet de spécifier si une bibliothèque nécessite l’utilisation de dlsym pour résoudre les appels P/Invoke en fonctions natives.

LinkTarget

Cibles de lien disponibles pour LinkWithAttribute

MarshalManagedExceptionMode

Cette énumération est utilisée pour spécifier ce qu’il faut faire lorsqu’une exception managée est levée et que cette exception atteint le code natif.

MarshalObjectiveCExceptionMode

Cette énumération est utilisée pour spécifier ce qu’il faut faire lorsqu’une exception Objective-C est levée et que cette exception atteint le code managé.

Délégués

Nom Description
AssemblyRegistrationHandler

L’espace de noms ObjCRuntime fournit des classes et des attributs pour la liaison Objective-C types à .NET.

MarshalManagedExceptionHandler

Délégué d’événement pour l’événement MarshalManagedException .

MarshalObjectiveCExceptionHandler

Délégué d’événement pour l’événement MarshalObjectiveCException .

Remarques

L’espace de noms ObjCRuntime contient les types et attributs fondamentaux utilisés pour créer des liaisons entre les bibliothèques Objective-C et le code .NET. Il fournit l’infrastructure d’exécution qui permet l’interopérabilité entre le code de .NET managé et le code de Objective-C natif sur les plateformes Apple.

Les principaux composants de cet espace de noms sont les suivants :

Cet espace de noms est principalement utilisé par les auteurs de bibliothèques qui créent des liaisons pour Objective-C frameworks, bien que les développeurs d’applications aient parfois besoin d’utiliser certains de ses membres pour des scénarios d’interopérabilité avancés.