ObjCRuntime Пространство имен

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

Классы

Имя Описание
AdoptsAttribute

Атрибут, используемый для указания того, что класс принимает определенный протокол Objective-C.

AssemblyRegistrationEventArgs

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

BaseWrapper

Базовый класс, используемый генератором привязки для создания типов оболочки протокола.

BindAsAttribute

BindAsAttribute позволяет привязке собственных типов NSNumber, NSValue и NSString (для перечислений) в более точные управляемые типы.

BindingImplAttribute

Этот атрибут содержит сведения о коде привязки.

BlockCallbackAttribute

Этот атрибут применяется к параметрам делегата в делегате, чтобы указать, что параметр делегата нуждается в мосте стиля блока Objective-C.

BlockProxyAttribute

Этот атрибут используется для уведомления среды выполнения, какой класс используется для упаковки блоков Objective-C в управляемые делегаты.

CategoryAttribute

Атрибут, используемый для флага класса как категории, которая расширяет другой тип.

CCallbackAttribute

Этот атрибут применяется к параметрам делегата в делегате, чтобы указать, что для параметра делегата требуется мост в стиле C.

Class

Управляемое представление для класса Objective-C.

Constants

Глобальные константы системных библиотек.

DelayedRegistrationAttribute

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

DelegateProxyAttribute

Этот атрибут используется для уведомления среды выполнения, какой класс используется для упаковки управляемых делегатов в блоки Objective-C.

DesignatedInitializerAttribute

Этот атрибут используется для пометки управляемых конструкторов, которые привязывают инициализаторы Objective-C, помеченные атрибутом NS_DESIGNATED_INITIALIZER.

DisposableObject

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

Dlfcn

Предоставляет доступ к динамическому компоновщику

LinkWithAttribute

Атрибут LinkWith указывает, как собственная библиотека, связанная с сборкой, должна быть связана с результирующий приложением.

MarshalManagedExceptionEventArgs

События аrgs для MarshalManagedException события.

MarshalObjectiveCExceptionEventArgs

События аrgs для MarshalObjectiveCException события.

MonoNativeFunctionWrapperAttribute

Атрибут, применяемый к делегатам, чтобы пометить их в качестве целевых объектов, с которыми можно использовать GetDelegateForFunctionPointer(IntPtr, Type).

MonoPInvokeCallbackAttribute

Атрибут, используемый для аннотации функций, которые будут вызываться из неуправляемого мира.

NativeAttribute

Эти атрибуты сообщают среде выполнения Xamarin.iOS, что собственный перечисление этой управляемой привязки перечисления использует собственный размер платформы в качестве размера для каждого значения перечисления (т. е. 32-разрядное значение в 32-разрядных архитектурах и 64-разрядное значение 64-разрядных архитектур).

NativeNameAttribute

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

NativeObjectExtensions

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

NMath

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

ObjCException

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

ObjectiveCFrameworkAttribute

Этот атрибут сообщает среде выполнения, к которой Objective-C платформы принадлежит данный тип.

Protocol

Представление протокола Objective-C.

ReleaseAttribute

Этот атрибут указывает, что возвращаемое значение функции сохраняется (вызывающий объект получает ссылку на возвращаемый объект).

RequiredFrameworkAttribute

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

RequiresSuperAttribute

Этот атрибут применяется к методам, которые должны вызывать базовую реализацию при переопределении.

Runtime

Предоставляет сведения о среде выполнения Xamarin.iOS.

Runtime.ClassHandles

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

RuntimeException

Класс, представляющий исключение, возникающее в среде выполнения Xamarin.

Selector

Представляет селектор Objective-C в управляемом коде.

SupportedSimulatorAttribute

Указывает, что API поддерживается для указанной платформы. Если указана версия, API доступен начиная с указанной версии ОС. Для указания поддержки в нескольких операционных системах можно применять несколько атрибутов.

ThreadSafeAttribute

Значение, Attribute указывающее, что метод или класс UIKit (для iOS) или AppKit (для macOS) является потокобезопасной.

ThrowHelper

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

TrampolineBlockBase

Базовый тип для блоков Objective-C батутов.

TransientAttribute

Помечает парамтер в подклассе NSObject как временный.

TypeConverter

Преобразует кодировки Objective-C типов в управляемые типы и наоборот.

UnsupportedSimulatorAttribute

Указывает, что API не поддерживается в симуляторе для указанной платформы. Можно применить несколько атрибутов, чтобы указать отсутствие поддержки на нескольких платформах.

UserDelegateTypeAttribute

Этот атрибут используется для делегатов, созданных генератором привязки, для правильной сопоставления подписей для блоков Objective-C и соответствующих предоставленных управляемых делегатов.

При привязке Objective-C блоков генератор привязки создаст управляемый делегат, подпись которого эквивалентна сигнатуре соответствующего блока для требуемого кода привязки. Однако эта подпись не обязательно достаточно точную, чтобы повторно создать подпись блока во время выполнения (что необходимо в некоторых обстоятельствах). Этот атрибут позволяет найти тип соответствующего управляемого делегата, который предоставляется созданными привязками, которая имеет достаточно сведений для повторного создания подписи соответствующего блока.

Структуры

Имя Описание
BlockLiteral

Упаковывает делегат ИНТЕРФЕЙСА командной строки ECMA (лямбда-коды C#, анонимные методы или делегаты) в виде блока Objective-C.

NativeHandle

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

Интерфейсы

Имя Описание
INativeObject

Простой интерфейс, используемый для предоставления неуправляемого указателя объекта в различных классах в Xamarin.iOS.

Перечисления

Имя Описание
Arch

Используется для представления узла, на котором выполняется это приложение.

ArgumentSemantic

Представляет семантику назначения для свойств.

BindingImplOptions

Эта перечисление используется типом для предоставления сведений BindingImplAttribute о коде привязки.

Dlfcn.Mode

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

Dlfcn.RTLD

Флаги динамического разрешения загрузчика.

DlsymOption

Используется для указания необходимости использования библиотеки dlsym для разрешения P/Invokes в собственных функциях.

LinkTarget

Целевые объекты ссылок, доступные для LinkWithAttribute

MarshalManagedExceptionMode

Эта перечисление используется для указания того, что делать при возникновении управляемого исключения, и это исключение достигает машинного кода.

MarshalObjectiveCExceptionMode

Эта перечисление используется для указания того, что делать при возникновении исключения Objective-C, и это исключение достигает управляемого кода.

Делегаты

Имя Описание
AssemblyRegistrationHandler

Пространство имен ObjCRuntime предоставляет классы и атрибуты для привязки типов Objective-C к .NET.

MarshalManagedExceptionHandler

Делегат события для MarshalManagedException события.

MarshalObjectiveCExceptionHandler

Делегат события для MarshalObjectiveCException события.

Комментарии

Пространство имен ObjCRuntime содержит основные типы и атрибуты, используемые для создания привязок между библиотеками Objective-C и кодом .NET. Она предоставляет инфраструктуру среды выполнения, которая обеспечивает взаимодействие между управляемым .NET кодом и собственным кодом Objective-C на платформах Apple.

К ключевым компонентам этого пространства имен относятся:

  • Атрибуты привязки, такие как BindAsAttribute, CategoryAttribute и DesignatedInitializerAttribute, которые управляют сопоставлением типов .NET с типами Objective-C. :
  • Классы поддержки среды выполнения, такие Class как и Selector обеспечивающие низкий уровень доступа к среде выполнения Objective-C. :
  • Блокировать типы взаимодействия, такие как BlockLiteral, которые позволяют работать с блоками Objective-C из .NET. :

Это пространство имен в основном используется авторами библиотеки, создавая привязки для платформ Objective-C, хотя разработчикам приложений иногда может потребоваться использовать некоторые из его членов для расширенных сценариев взаимодействия.