ObjCRuntime Espaço de Nomes
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
O espaço de nomes ObjCRuntime fornece classes e atributos para ligar tipos de Objective-C a .NET.
Classes
| Nome | Descrição |
|---|---|
| AdoptsAttribute |
Um atributo usado para especificar que uma classe adota um protocolo Objective-C específico. |
| AssemblyRegistrationEventArgs |
O espaço de nomes ObjCRuntime fornece classes e atributos para ligar tipos de Objective-C a .NET. |
| BaseWrapper |
Classe base usada pelo gerador de bindinge para gerar Tipos de Wrapper de Protocolo. |
| BindAsAttribute |
O BindAsAttribute permite ligar tipos nativos NSNumber, NSValue e NSString (para enums) em tipos geridos mais precisos. |
| BindingImplAttribute |
Este atributo fornece informação sobre código de binding. |
| BlockCallbackAttribute |
Este atributo é aplicado aos parâmetros de delegar num delegado para especificar que o parâmetro de delegado precisa de uma ponte ao estilo Objective-C Block. |
| BlockProxyAttribute |
Este atributo é usado para notificar o runtime qual a classe que é usada para envolver Objective-C blocos em delegados geridos. |
| CategoryAttribute |
Atributo usado para sinalizar uma classe como uma categoria que estende outro tipo. |
| CCallbackAttribute |
Este atributo é aplicado aos parâmetros de delegado num delegado para especificar que o parâmetro de delegado precisa de uma ponte ao estilo C. |
| Class |
Representação gerida para uma turma Objective-C. |
| Constants |
Constantes globais para bibliotecas do sistema. |
| DelayedRegistrationAttribute |
Um atributo que controla se Objective-C registo da aula é atrasado. |
| DelegateProxyAttribute |
Este atributo é usado para notificar o runtime que classe é usada para envolver delegados geridos em blocos Objective-C. |
| DesignatedInitializerAttribute |
Este atributo é usado para marcar construtores geridos que associam Objective-C inicializadores marcados com o atributo NS_DESIGNATED_INITIALIZER. |
| DisposableObject |
O espaço de nomes ObjCRuntime fornece classes e atributos para ligar tipos de Objective-C a .NET. |
| Dlfcn |
Fornece acesso ao linker dinâmico |
| LinkWithAttribute |
Um atributo LinkWith especifica como a biblioteca nativa associada ao assembly deve ser ligada à aplicação resultante. |
| MarshalManagedExceptionEventArgs |
O evento apresenta-se para o MarshalManagedException evento. |
| MarshalObjectiveCExceptionEventArgs |
O evento apresenta-se para o MarshalObjectiveCException evento. |
| MonoNativeFunctionWrapperAttribute |
Atribuir para aplicar aos delegados para os sinalizar como alvos 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 gerido. |
| NativeAttribute |
Este atributo indica ao runtime do Xamarin.iOS que o enum nativo que este enum gerido liga está a usar um tamanho nativo para a plataforma como tamanho para cada valor de enum (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 espaço de nomes ObjCRuntime fornece classes e atributos para ligar tipos de Objective-C a .NET. |
| NativeObjectExtensions |
O espaço de nomes ObjCRuntime fornece classes e atributos para ligar tipos de Objective-C a .NET. |
| NMath |
O espaço de nomes ObjCRuntime fornece classes e atributos para ligar tipos de Objective-C a .NET. |
| ObjCException |
Representa uma exceção Objective-C que foi detetada e envolvida como exceção gerida. |
| ObjectiveCFrameworkAttribute |
Este atributo indica ao tempo de execução a que framework Objective-C um dado tipo pertence. |
| Protocol |
Representação de um protocolo Objective-C. |
| ReleaseAttribute |
Este atributo indica que o valor de retorno de uma função é mantido (o chamador obtém uma referência ao objeto devolvido). |
| RequiredFrameworkAttribute |
Especifica uma estrutura nativa exigida por uma assembleia. |
| RequiresSuperAttribute |
Este atributo aplica-se a métodos que devem chamar a sua implementação base quando são sobrepostos. |
| Runtime |
Fornece informações sobre o tempo de execução Xamarin.iOS. |
| Runtime.ClassHandles |
O espaço de nomes ObjCRuntime fornece classes e atributos para ligar tipos de Objective-C a .NET. |
| RuntimeException |
que representa uma exceção que ocorre no runtime da Xamarin. |
| Selector |
Representa um seletor de Objective-C em código gerido. |
| SupportedSimulatorAttribute |
Indica que uma API é suportada para uma plataforma especificada. Se uma versão for especificada, a API está disponível a partir da versão do sistema operativo especificada. Múltiplos atributos podem ser aplicados para indicar suporte em múltiplos sistemas operativos. |
| ThreadSafeAttribute |
A Attribute que indica que um método ou classe UIKit (para iOS) ou AppKit (para macOS) é seguro para threads. |
| ThrowHelper |
O espaço de nomes ObjCRuntime fornece classes e atributos para ligar tipos de Objective-C a .NET. |
| TrampolineBlockBase |
Tipo base para blocos Objective-C trampolim. |
| TransientAttribute |
Sinaliza um parâmetro numa subclasse NSObject como sendo transitório. |
| TypeConverter |
Converte Objective-C codificações de tipos em tipos geridos e vice-versa. |
| UnsupportedSimulatorAttribute |
Indica que uma API não é suportada no simulador para a plataforma especificada. Múltiplos atributos podem ser aplicados para indicar falta de suporte em múltiplas plataformas. |
| UserDelegateTypeAttribute |
Este atributo é usado em delegados criados pelo gerador de ligação para mapear corretamente entre assinaturas de blocos Objective-C e os respetivos delegados geridos expostos. Ao ligar Objective-C blocos, o gerador de ligação criará um delegado gerido cuja assinatura é equivalente à assinatura do bloco correspondente para o código de ligação necessário. No entanto, esta assinatura não é necessariamente suficientemente precisa para recriar a assinatura do bloco em tempo de execução (o que é necessário em algumas circunstâncias). Este atributo permite encontrar o tipo do delegado gerido correspondente exposto pelas ligações geradas, que tem informação suficiente para recriar a assinatura do bloco correspondente. |
Estruturas
| Nome | Descrição |
|---|---|
| BlockLiteral |
Envolve um delegado CLI ECMA (lambdas C#, métodos anónimos ou delegados) como um bloco Objective-C. |
| NativeHandle |
O espaço de nomes ObjCRuntime fornece classes e atributos para ligar tipos de Objective-C a .NET. |
| ObjCSuper |
Representa a estrutura Objective-C |
Interfaces
| Nome | Descrição |
|---|---|
| INativeObject |
Uma interface simples usada para expor o apontador de objeto não gerido em várias classes no Xamarin.iOS. |
Enumerações
| Nome | Descrição |
|---|---|
| Arch |
Usado para representar o host onde esta aplicação está a correr. |
| ArgumentSemantic |
Representa a semântica de atribuição para propriedades. |
| BindingImplOptions |
Este enum é usado pelo BindingImplAttribute tipo para fornecer informação sobre código de ligação. |
| Dlfcn.Mode |
O espaço de nomes ObjCRuntime fornece classes e atributos para ligar tipos de Objective-C a .NET. |
| Dlfcn.RTLD |
Flags de resolução do carregador dinâmico. |
| DlsymOption |
Usado para especificar se uma biblioteca requer usar dlsym para resolver P/Invokes para funções nativas. |
| LinkTarget |
Alvos de ligação disponíveis para LinkWithAttribute |
| MarshalManagedExceptionMode |
Este enum é usado para especificar o que fazer quando uma exceção gerida é lançada, e essa exceção atinge o código nativo. |
| MarshalObjectiveCExceptionMode |
Este enum é usado para especificar o que fazer quando uma exceção Objective-C é lançada, e essa exceção chega ao código gerido. |
Delegados
| Nome | Descrição |
|---|---|
| AssemblyRegistrationHandler |
O espaço de nomes ObjCRuntime fornece classes e atributos para ligar tipos de Objective-C a .NET. |
| MarshalManagedExceptionHandler |
O delegado do MarshalManagedException evento. |
| MarshalObjectiveCExceptionHandler |
O delegado do MarshalObjectiveCException evento. |
Observações
O espaço de nomes ObjCRuntime contém os tipos e atributos fundamentais usados para criar ligações entre bibliotecas Objective-C e código .NET. Fornece a infraestrutura de execução que permite a interoperabilidade entre código de .NET gerido e código nativo de Objective-C nas plataformas Apple.
Componentes-chave deste espaço de nomes incluem:
- Atributos de ligação como BindAsAttribute, CategoryAttribute e DesignatedInitializerAttribute que controlam como .NET tipos correspondem a Objective-C tipos. :
- Classes de suporte em tempo de execução como Class e Selector que fornecem acesso de baixo nível ao tempo de execução Objective-C. :
- Tipos de interoperabilidade de blocos como BlockLiteral que permitem trabalhar com blocos Objective-C de .NET. :
Este espaço de nomes é usado principalmente por autores de bibliotecas que criam ligações a frameworks de Objective-C, embora os programadores de aplicações possam ocasionalmente precisar de usar alguns dos seus membros para cenários avançados de interoperabilidade.