ObjCRuntime 네임스페이스

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

클래스

Name Description
AdoptsAttribute

클래스가 특정 Objective-C 프로토콜을 채택하도록 지정하는 데 사용되는 특성입니다.

AssemblyRegistrationEventArgs

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

BaseWrapper

바인딩 생성기에서 프로토콜 래퍼 형식을 생성하는 데 사용하는 기본 클래스입니다.

BindAsAttribute

BindAsAttribute를 사용하면 네이티브 NSNumber, NSValue 및 NSString(열거형의 경우) 형식을 보다 정확한 관리형 형식으로 바인딩할 수 있습니다.

BindingImplAttribute

이 특성은 바인딩 코드에 대한 정보를 제공합니다.

BlockCallbackAttribute

이 특성은 대리자 매개 변수에 Objective-C 블록 스타일 브리지가 필요하도록 지정하기 위해 대리자의 대리자 매개 변수에 적용됩니다.

BlockProxyAttribute

이 특성은 Objective-C 블록을 관리되는 대리자로 래핑하는 데 사용되는 클래스를 런타임에 알리는 데 사용됩니다.

CategoryAttribute

클래스를 다른 형식을 확장하는 범주로 플래그를 지정하는 데 사용되는 특성입니다.

CCallbackAttribute

이 특성은 대리자 매개 변수에 C 스타일 브리지가 필요하도록 지정하기 위해 대리자의 대리자 매개 변수에 적용됩니다.

Class

Objective-C 클래스에 대한 관리되는 표현입니다.

Constants

시스템 라이브러리에 대한 전역 상수입니다.

DelayedRegistrationAttribute

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

DelegateProxyAttribute

이 특성은 관리되는 대리자를 Objective-C 블록으로 래핑하는 데 사용되는 클래스를 런타임에 알리는 데 사용됩니다.

DesignatedInitializerAttribute

이 특성은 NS_DESIGNATED_INITIALIZER 특성으로 표시된 Objective-C 이니셜라이저를 바인딩하는 관리되는 생성자를 표시하는 데 사용됩니다.

DisposableObject

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

Dlfcn

동적 링커에 대한 액세스 제공

LinkWithAttribute

LinkWith 특성은 어셈블리와 연결된 네이티브 라이브러리를 결과 애플리케이션에 연결하는 방법을 지정합니다.

MarshalManagedExceptionEventArgs

이벤트에 대한 이벤트 인수입니다 MarshalManagedException .

MarshalObjectiveCExceptionEventArgs

이벤트에 대한 이벤트 인수입니다 MarshalObjectiveCException .

MonoNativeFunctionWrapperAttribute

대리자를 사용하여 플래그를 대상으로 지정하기 위해 대리자에게 적용할 GetDelegateForFunctionPointer(IntPtr, Type)특성입니다.

MonoPInvokeCallbackAttribute

관리되지 않는 환경에서 다시 호출되는 함수에 주석을 추가하는 데 사용되는 특성입니다.

NativeAttribute

이 특성은 이 관리되는 열거형이 바인딩하는 네이티브 열거형이 플랫폼의 네이티브 크기를 각 열거형 값(즉, 32비트 아키텍처의 32비트 값 및 64비트 아키텍처의 64비트 값)으로 사용하고 있음을 Xamarin.iOS 런타임에 알려줍니다.

NativeNameAttribute

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

NativeObjectExtensions

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

NMath

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

ObjCException

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

ObjectiveCFrameworkAttribute

이 특성은 지정된 형식이 속한 Objective-C 프레임워크를 런타임에 알려줍니다.

Protocol

Objective-C 프로토콜의 표현입니다.

ReleaseAttribute

이 특성은 함수의 반환 값이 유지됨을 나타냅니다(호출자는 반환된 개체에 대한 참조를 얻습니다).

RequiredFrameworkAttribute

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

RequiresSuperAttribute

이 특성은 재정의될 때 기본 구현을 호출해야 하는 메서드에 적용됩니다.

Runtime

Xamarin.iOS 런타임에 대한 정보를 제공합니다.

Runtime.ClassHandles

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

RuntimeException

Xamarin 런타임에서 발생하는 예외를 나타내는 클래스입니다.

Selector

관리 코드의 Objective-C 선택기를 나타냅니다.

SupportedSimulatorAttribute

API가 지정된 플랫폼에 대해 지원됨을 나타냅니다. 버전이 지정된 경우 지정된 OS 버전부터 API를 사용할 수 있습니다. 여러 운영 체제에서 지원을 나타내기 위해 여러 특성을 적용할 수 있습니다.

ThreadSafeAttribute

Attribute UIKit(iOS의 경우) 또는 AppKit(macOS의 경우) 메서드 또는 클래스가 스레드로부터 안전하다는 것을 나타내는 A입니다.

ThrowHelper

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

TrampolineBlockBase

Objective-C 트램폴린 블록의 기본 형식입니다.

TransientAttribute

NSObject 하위 클래스의 매개 변수에 임시로 플래그를 지정합니다.

TypeConverter

Objective-C 형식 인코딩을 관리되는 형식으로 변환하고 그 반대로 변환합니다.

UnsupportedSimulatorAttribute

지정된 플랫폼에 대한 시뮬레이터에서 API가 지원되지 않음을 나타냅니다. 여러 플랫폼에서 지원이 없음을 나타내기 위해 여러 특성을 적용할 수 있습니다.

UserDelegateTypeAttribute

이 특성은 바인딩 생성기에서 만든 대리자에서 Objective-C 블록의 서명과 노출된 해당 관리 대리자 간에 올바르게 매핑하는 데 사용됩니다.

Objective-C 블록을 바인딩할 때 바인딩 생성기는 서명이 필요한 바인딩 코드에 대한 해당 블록의 서명과 동일한 관리되는 대리자를 만듭니다. 그러나 이 서명이 런타임에 블록의 서명을 다시 만들 만큼 정확하지는 않습니다(경우에 따라 필요). 이 특성을 사용하면 생성된 바인딩에 의해 노출되는 해당 관리 대리자의 형식을 찾을 수 있으며, 해당 블록의 서명을 다시 만들 수 있는 충분한 정보가 있습니다.

구조체

Name Description
BlockLiteral

ECMA CLI 대리자(C# 람다, 익명 메서드 또는 대리자)를 Objective-C 블록으로 래핑합니다.

NativeHandle

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

인터페이스

Name Description
INativeObject

Xamarin.iOS의 다양한 클래스에서 관리되지 않는 개체 포인터를 노출하는 데 사용되는 간단한 인터페이스입니다.

열거형

Name Description
Arch

이 앱이 실행 중인 호스트를 나타내는 데 사용됩니다.

ArgumentSemantic

속성에 대한 할당 의미 체계를 나타냅니다.

BindingImplOptions

이 열거형은 바인딩 코드에 BindingImplAttribute 대한 정보를 제공하기 위해 형식에서 사용됩니다.

Dlfcn.Mode

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

Dlfcn.RTLD

동적 로더 확인 플래그입니다.

DlsymOption

라이브러리에서 dlsym을 사용하여 P/Invokes를 네이티브 함수로 확인해야 하는지를 지정하는 데 사용됩니다.

LinkTarget

사용할 수 있는 링크 대상 LinkWithAttribute

MarshalManagedExceptionMode

이 열거형은 관리되는 예외가 throw되고 해당 예외가 네이티브 코드에 도달할 때 수행할 작업을 지정하는 데 사용됩니다.

MarshalObjectiveCExceptionMode

이 열거형은 Objective-C 예외가 throw되고 해당 예외가 관리 코드에 도달할 때 수행할 작업을 지정하는 데 사용됩니다.

대리자

Name Description
AssemblyRegistrationHandler

ObjCRuntime 네임스페이스는 .NET Objective-C 형식을 바인딩하기 위한 클래스 및 특성을 제공합니다.

MarshalManagedExceptionHandler

이벤트에 대한 이벤트 대리자입니다 MarshalManagedException .

MarshalObjectiveCExceptionHandler

이벤트에 대한 이벤트 대리자입니다 MarshalObjectiveCException .

설명

ObjCRuntime 네임스페이스에는 Objective-C 라이브러리와 .NET 코드 간에 바인딩을 만드는 데 사용되는 기본 형식과 특성이 포함되어 있습니다. Apple 플랫폼에서 관리되는 .NET 코드와 네이티브 Objective-C 코드 간의 상호 운용성을 가능하게 하는 런타임 인프라를 제공합니다.

이 네임스페이스의 주요 구성 요소는 다음과 같습니다.

이 네임스페이스는 주로 라이브러리 작성자가 Objective-C 프레임워크에 대한 바인딩을 만드는 데 사용되지만, 애플리케이션 개발자는 때때로 고급 상호 운용성 시나리오에 일부 멤버를 사용해야 할 수 있습니다.