ObjCRuntime Namespace

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

Classes

Nome Description
AdoptsAttribute

Um atributo usado para especificar que uma classe adota um protocolo Objective-C específico.

AssemblyRegistrationEventArgs

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

BaseWrapper

Classe base usada pelo gerador de associação para gerar tipos de wrapper de protocolo.

BindAsAttribute

O BindAsAttribute permite associar tipos NSNumber nativos, NSValue e NSString (para enums) em tipos gerenciados mais precisos.

BindingImplAttribute

Esse atributo fornece informações sobre o código de associação.

BlockCallbackAttribute

Esse atributo é aplicado a parâmetros delegados em um delegado para especificar que o parâmetro delegado precisa de uma ponte Objective-C estilo bloco.

BlockProxyAttribute

Esse atributo é usado para notificar o runtime qual classe é usada para encapsular Objective-C blocos em delegados gerenciados.

CategoryAttribute

Atributo usado para sinalizar uma classe como uma categoria que estende outro tipo.

CCallbackAttribute

Esse atributo é aplicado a parâmetros delegados em um delegado para especificar que o parâmetro delegado precisa de uma ponte no estilo C.

Class

Representação gerenciada para uma classe Objective-C.

Constants

Constantes globais para bibliotecas do sistema.

DelayedRegistrationAttribute

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

DelegateProxyAttribute

Esse atributo é usado para notificar o runtime qual classe é usada para encapsular delegados gerenciados em blocos de Objective-C.

DesignatedInitializerAttribute

Esse atributo é usado para marcar construtores gerenciados que associam inicializadores Objective-C marcados com o atributo NS_DESIGNATED_INITIALIZER.

DisposableObject

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

Dlfcn

Fornece acesso ao vinculador dinâmico

LinkWithAttribute

Um atributo LinkWith especifica como a biblioteca nativa associada ao assembly deve ser vinculada ao aplicativo resultante.

MarshalManagedExceptionEventArgs

Os args de evento para o MarshalManagedException evento.

MarshalObjectiveCExceptionEventArgs

Os args de evento para o MarshalObjectiveCException evento.

MonoNativeFunctionWrapperAttribute

Atributo a ser aplicado aos delegados para sinalizar como destinos que podem ser usados com GetDelegateForFunctionPointer(IntPtr, Type).

MonoPInvokeCallbackAttribute

Atributo usado para anotar funções que serão chamadas de volta do mundo não gerenciado.

NativeAttribute

Esses atributos informam ao runtime do Xamarin.iOS que a enumeração nativa que essa enumeração gerenciada associa está usando um tamanho nativo para a plataforma como o tamanho de cada valor de enumeração (ou seja, um valor de 32 bits em arquiteturas de 32 bits e um valor de 64 bits em arquiteturas de 64 bits).

NativeNameAttribute

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

NativeObjectExtensions

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

NMath

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

ObjCException

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

ObjectiveCFrameworkAttribute

Esse atributo informa ao runtime ao qual Objective-C estrutura ao qual um determinado tipo pertence.

Protocol

Representação de um protocolo Objective-C.

ReleaseAttribute

Esse atributo indica que o valor retornado de uma função é mantido (o chamador obtém uma referência ao objeto retornado).

RequiredFrameworkAttribute

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

RequiresSuperAttribute

Esse atributo é aplicado a métodos que devem chamar sua implementação base quando eles são substituídos.

Runtime

Fornece informações sobre o runtime do Xamarin.iOS.

Runtime.ClassHandles

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

RuntimeException

Classe que representa uma exceção que ocorre no runtime Xamarin.

Selector

Representa um seletor de Objective-C no código gerenciado.

SupportedSimulatorAttribute

Indica que há suporte para uma API para uma plataforma especificada. Se uma versão for especificada, a API estará disponível a partir da versão do sistema operacional especificada. Vários atributos podem ser aplicados para indicar suporte em vários sistemas operacionais.

ThreadSafeAttribute

Um Attribute que indica que um método ou classe UIKit (para iOS) ou AppKit (para macOS) é thread-safe.

ThrowHelper

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

TrampolineBlockBase

Tipo base para Objective-C blocos de trampolim.

TransientAttribute

Sinaliza um parâmetro em uma subclasse NSObject como sendo transitório.

TypeConverter

Converte Objective-C codificações de tipo em tipos gerenciados e vice-versa.

UnsupportedSimulatorAttribute

Indica que não há suporte para uma API no simulador para a plataforma especificada. Vários atributos podem ser aplicados para indicar a falta de suporte em várias plataformas.

UserDelegateTypeAttribute

Esse atributo é usado em delegados criados pelo gerador de associação para mapear corretamente entre assinaturas para blocos de Objective-C e seus representantes gerenciados expostos correspondentes.

Ao associar Objective-C blocos, o gerador de associação criará um delegado gerenciado cuja assinatura é equivalente à assinatura do bloco correspondente para o código de associação necessário. No entanto, essa assinatura não é necessariamente precisa o suficiente para recriar a assinatura do bloco em runtime (o que é necessário em algumas circunstâncias). Esse atributo possibilita localizar o tipo do delegado gerenciado correspondente exposto pelas associações geradas, que tem informações suficientes para recriar a assinatura do bloco correspondente.

Estruturas

Nome Description
BlockLiteral

Encapsula um delegado da CLI do ECMA (lambdas em C#, métodos anônimos ou delegados) como um bloco de Objective-C.

NativeHandle

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

Interfaces

Nome Description
INativeObject

Uma interface simples usada para expor o ponteiro de objeto não gerenciado em várias classes no Xamarin.iOS.

Enumerações

Nome Description
Arch

Usado para representar o host no qual este aplicativo está em execução.

ArgumentSemantic

Representa a semântica de atribuição para propriedades.

BindingImplOptions

Essa enumeração é usada pelo BindingImplAttribute tipo para fornecer informações sobre o código de associação.

Dlfcn.Mode

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

Dlfcn.RTLD

Sinalizadores de resolução de carregador dinâmico.

DlsymOption

Usado para especificar se uma biblioteca requer o uso de dlsym para resolver P/Invokes para funções nativas.

LinkTarget

Destinos de link disponíveis para LinkWithAttribute

MarshalManagedExceptionMode

Essa enumeração é usada para especificar o que fazer quando uma exceção gerenciada é gerada e essa exceção atinge o código nativo.

MarshalObjectiveCExceptionMode

Essa enumeração é usada para especificar o que fazer quando uma exceção Objective-C é gerada e essa exceção atinge o código gerenciado.

Delegados

Nome Description
AssemblyRegistrationHandler

O namespace ObjCRuntime fornece classes e atributos para associar tipos de Objective-C a .NET.

MarshalManagedExceptionHandler

O representante do MarshalManagedException evento.

MarshalObjectiveCExceptionHandler

O representante do MarshalObjectiveCException evento.

Comentários

O namespace ObjCRuntime contém os tipos e atributos fundamentais usados para criar associações entre bibliotecas Objective-C e .NET código. Ele fornece a infraestrutura de runtime que permite a interoperabilidade entre código de .NET gerenciado e código de Objective-C nativo em plataformas Apple.

Os principais componentes desse namespace incluem:

Esse namespace é usado principalmente por autores de biblioteca criando associações para estruturas de Objective-C, embora os desenvolvedores de aplicativos possam ocasionalmente precisar usar alguns de seus membros para cenários avançados de interoperabilidade.