ObjCRuntime Namespace

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

Klassen

Name Beschreibung
AdoptsAttribute

Ein Attribut, das verwendet wird, um anzugeben, dass eine Klasse ein bestimmtes Objective-C-Protokoll verwendet.

AssemblyRegistrationEventArgs

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

BaseWrapper

Basisklasse, die vom Bindungsgenerator zum Generieren von Protokollwrappertypen verwendet wird.

BindAsAttribute

BindAsAttribute ermöglicht das Binden systemeigener NSNumber-, NSValue- und NSString-Typen (für Enumerationen) in genauere verwaltete Typen.

BindingImplAttribute

Dieses Attribut stellt Informationen zum Bindungscode bereit.

BlockCallbackAttribute

Dieses Attribut wird auf Stellvertretungsparameter in einem Delegaten angewendet, um anzugeben, dass der Delegatparameter eine Objective-C Block-Style-Brücke benötigt.

BlockProxyAttribute

Dieses Attribut wird verwendet, um die Laufzeit zu benachrichtigen, mit der Objective-C Blöcke in verwaltete Stellvertretungen umbrochen werden.

CategoryAttribute

Attribut, das verwendet wird, um eine Klasse als Kategorie zu kennzeichnen, die einen anderen Typ erweitert.

CCallbackAttribute

Dieses Attribut wird auf Stellvertretungsparameter in einem Delegaten angewendet, um anzugeben, dass der Delegatparameter eine C-Style-Brücke benötigt.

Class

Verwaltete Darstellung einer Objective-C Klasse.

Constants

Globale Konstanten für Systembibliotheken.

DelayedRegistrationAttribute

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

DelegateProxyAttribute

Dieses Attribut wird verwendet, um die Laufzeit zu benachrichtigen, mit der verwaltete Stellvertretungen in Objective-C Blöcke umbrochen werden.

DesignatedInitializerAttribute

Dieses Attribut wird verwendet, um verwaltete Konstruktoren zu markieren, die Objective-C Initialisierer binden, die mit dem attribut NS_DESIGNATED_INITIALIZER gekennzeichnet sind.

DisposableObject

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

Dlfcn

Bietet Zugriff auf den dynamischen Linker

LinkWithAttribute

Ein LinkWith-Attribut gibt an, wie die systemeigene Bibliothek, die der Assembly zugeordnet ist, mit der resultierenden Anwendung verknüpft werden soll.

MarshalManagedExceptionEventArgs

Die Ereignisargumente für das MarshalManagedException Ereignis.

MarshalObjectiveCExceptionEventArgs

Die Ereignisargumente für das MarshalObjectiveCException Ereignis.

MonoNativeFunctionWrapperAttribute

Attribut, das auf Stellvertretungen angewendet werden soll, um sie als Ziele zu kennzeichnen, die mit GetDelegateForFunctionPointer(IntPtr, Type).

MonoPInvokeCallbackAttribute

Attribut, das zum Kommentieren von Funktionen verwendet wird, die aus der nicht verwalteten Welt zurück aufgerufen werden.

NativeAttribute

Diese Attribute geben der Xamarin.iOS-Laufzeit an, dass die systemeigene Enumeration dieser verwalteten Enumerationsbindungen eine systemeigene Größe für die Plattform als Größe für jeden Enumerationswert verwendet (d. h. ein 32-Bit-Wert für 32-Bit-Architekturen und ein 64-Bit-Wert für 64-Bit-Architekturen).

NativeNameAttribute

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

NativeObjectExtensions

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

NMath

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

ObjCException

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

ObjectiveCFrameworkAttribute

Dieses Attribut teilt der Laufzeit mit, zu welcher Objective-C Framework ein bestimmter Typ gehört.

Protocol

Darstellung eines Objective-C-Protokolls.

ReleaseAttribute

Dieses Attribut gibt an, dass der Rückgabewert einer Funktion beibehalten wird (der Aufrufer erhält einen Verweis auf das zurückgegebene Objekt).

RequiredFrameworkAttribute

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

RequiresSuperAttribute

Dieses Attribut wird auf Methoden angewendet, die ihre Basisimplementierung aufrufen müssen, wenn sie überschrieben werden.

Runtime

Stellt Informationen zur Xamarin.iOS-Runtime bereit.

Runtime.ClassHandles

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

RuntimeException

Klasse, die eine Ausnahme darstellt, die in der Xamarin Laufzeit auftritt.

Selector

Stellt eine Objective-C Selektor in verwaltetem Code dar.

SupportedSimulatorAttribute

Gibt an, dass eine API für eine angegebene Plattform unterstützt wird. Wenn eine Version angegeben ist, ist die API ab der angegebenen Betriebssystemversion verfügbar. Es können mehrere Attribute angewendet werden, um die Unterstützung auf mehreren Betriebssystemen anzugeben.

ThreadSafeAttribute

A Attribute that indicates that indicates that a UIKit (for iOS) or AppKit (for macOS) method or class is thread-safe.

ThrowHelper

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

TrampolineBlockBase

Basistyp für Objective-C Trampolinblöcke.

TransientAttribute

Kennzeichnet einen Paramter in einer NSObject-Unterklasse als vorübergehend.

TypeConverter

Konvertiert Objective-C Typcodierungen in verwaltete Typen und umgekehrt.

UnsupportedSimulatorAttribute

Gibt an, dass eine API im Simulator für die angegebene Plattform nicht unterstützt wird. Es können mehrere Attribute angewendet werden, um auf mehrere Plattformen auf fehlende Unterstützung hinzuweisen.

UserDelegateTypeAttribute

Dieses Attribut wird für Stellvertretungen verwendet, die vom Bindungsgenerator erstellt wurden, um zwischen Signaturen für Objective-C-Blöcken und den entsprechenden verfügbar gemachten verwalteten Delegaten ordnungsgemäß zuzuordnen.

Beim Binden Objective-C Blöcke erstellt der Bindungsgenerator einen verwalteten Delegaten, dessen Signatur der signatur des entsprechenden Blocks für den erforderlichen Bindungscode entspricht. Diese Signatur ist jedoch nicht unbedingt genau genug, um die Signatur des Blocks zur Laufzeit erneut zu erstellen (was unter bestimmten Umständen erforderlich ist). Dieses Attribut ermöglicht es, den Typ des entsprechenden verwalteten Delegaten zu finden, der von den generierten Bindungen verfügbar gemacht wird, die über genügend Informationen verfügen, um die Signatur des entsprechenden Blocks erneut zu erstellen.

Strukturen

Name Beschreibung
BlockLiteral

Umschließt einen ECMA CLI-Delegaten (C#-Lambdas, anonyme Methoden oder Stellvertretungen) als Objective-C-Block.

NativeHandle

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

Schnittstellen

Name Beschreibung
INativeObject

Eine einfache Schnittstelle, die verwendet wird, um den nicht verwalteten Objektzeiger in verschiedenen Klassen in Xamarin.iOS verfügbar zu machen.

Enumerationen

Name Beschreibung
Arch

Wird verwendet, um den Host darzustellen, auf dem diese App ausgeführt wird.

ArgumentSemantic

Stellt die Zuordnungssemantik für Eigenschaften dar.

BindingImplOptions

Diese Enumeration wird vom BindingImplAttribute Typ verwendet, um Informationen zum Bindungscode bereitzustellen.

Dlfcn.Mode

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

Dlfcn.RTLD

Kennzeichnungen der dynamischen Ladeprogrammauflösung.

DlsymOption

Wird verwendet, um anzugeben, ob eine Bibliothek dlsym zum Auflösen von P/Invokes in systemeigene Funktionen benötigt.

LinkTarget

Linkziele verfügbar für LinkWithAttribute

MarshalManagedExceptionMode

Diese Enumeration wird verwendet, um anzugeben, was zu tun ist, wenn eine verwaltete Ausnahme ausgelöst wird, und diese Ausnahme erreicht systemeigenen Code.

MarshalObjectiveCExceptionMode

Diese Enumeration wird verwendet, um anzugeben, was ausgeführt werden soll, wenn eine Objective-C Ausnahme ausgelöst wird und diese Ausnahme verwalteten Code erreicht.

Delegaten

Name Beschreibung
AssemblyRegistrationHandler

Der ObjCRuntime-Namespace stellt Klassen und Attribute für die Bindung Objective-C Typen an .NET bereit.

MarshalManagedExceptionHandler

Der Ereignisdelegat für das MarshalManagedException Ereignis.

MarshalObjectiveCExceptionHandler

Der Ereignisdelegat für das MarshalObjectiveCException Ereignis.

Hinweise

Der ObjCRuntime-Namespace enthält die grundlegenden Typen und Attribute, die zum Erstellen von Bindungen zwischen Objective-C Bibliotheken und .NET Code verwendet werden. Sie stellt die Laufzeitinfrastruktur bereit, die die Interoperabilität zwischen verwaltetem .NET Code und systemeigenem Objective-C Code auf Apple-Plattformen ermöglicht.

Zu den wichtigsten Komponenten dieses Namespace gehören:

Dieser Namespace wird in erster Linie von Bibliotheksautoren verwendet, die Bindungen an Objective-C Frameworks erstellen, obwohl Anwendungsentwickler gelegentlich einige seiner Member für erweiterte Interoperabilitätsszenarien verwenden müssen.