PDEPlugInCallbackProtocol Konstruktory

Definicja

Przeciążenia

Nazwa Opis
PDEPlugInCallbackProtocol()

Tworzy nowy PDEPlugInCallbackProtocol z wartościami domyślnymi.

PDEPlugInCallbackProtocol(NSObjectFlag)

Konstruktor do wywołania klas pochodnych, aby pominąć inicjowanie i jedynie przydzielić obiekt.

PDEPlugInCallbackProtocol(NativeHandle)

Konstruktor używany podczas tworzenia zarządzanych reprezentacji niezarządzanych obiektów. Wywoływane przez środowisko uruchomieniowe.

PDEPlugInCallbackProtocol()

Tworzy nowy PDEPlugInCallbackProtocol z wartościami domyślnymi.

[Foundation.Export("init")]
[ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)]
protected PDEPlugInCallbackProtocol();
Atrybuty

Dotyczy

PDEPlugInCallbackProtocol(NSObjectFlag)

Konstruktor do wywołania klas pochodnych, aby pominąć inicjowanie i jedynie przydzielić obiekt.

[ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)]
protected PDEPlugInCallbackProtocol(Foundation.NSObjectFlag t);
[<ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)>]
new PrintCore.PDEPlugInCallbackProtocol : Foundation.NSObjectFlag -> PrintCore.PDEPlugInCallbackProtocol

Parametry

t
NSObjectFlag

Nieużywane wartości sentinel, przekaż NSObjectFlag.Empty.

Atrybuty

Uwagi

Ten konstruktor powinien być wywoływany przez klasy pochodne, gdy całkowicie skonstruują obiekt w kodzie zarządzanym i chcą, aby środowisko uruchomieniowe przydzieliło i zainicjowało NSObjectobiekt . Jest to wymagane do zaimplementowania dwuetapowego procesu inicjowania, który Objective-C używa, pierwszym krokiem jest wykonanie alokacji obiektu, drugi krok polega na zainicjowaniu obiektu. Gdy deweloperzy wywołują ten konstruktor, korzystają z bezpośredniej ścieżki, która przechodzi aż do tego, aby NSObject jedynie przydzielić pamięć obiektu i powiązać Objective-C i obiekty języka C#. Rzeczywista inicjalizacja obiektu jest do dewelopera.

Ten konstruktor jest zwykle używany przez generator powiązań do przydzielenia obiektu, ale zapobiega rzeczywistej inicjalizacji. Po zakończeniu alokacji konstruktor musi zainicjować obiekt. W przypadku konstruktorów generowanych przez generator powiązań oznacza to, że ręcznie wywołuje jedną z metod "init", aby zainicjować obiekt.

Jest to odpowiedzialność dewelopera za całkowite zainicjowanie obiektu, jeśli utworzy łańcuch przy użyciu tego łańcucha konstruktorów.

Ogólnie rzecz biorąc, jeśli konstruktor dewelopera wywołuje odpowiednią implementację podstawową, powinien również wywołać metodę Objective-C init. Jeśli tak nie jest, deweloperzy powinni zamiast tego łączyć się z odpowiednim konstruktorem w swojej klasie.

Wartość argumentu jest ignorowana i zapewnia jedynie, że jedynym wykonywanym kodem jest faza budowy to podstawowa NSObject rejestracja alokacji i typu środowiska uruchomieniowego. Zazwyczaj łańcuch wygląda następująco:

//
// The NSObjectFlag constructor merely allocates the object and registers the C# class with the Objective-C runtime if necessary.
// No actual initXxx method is invoked, that is done later in the constructor
//
// This is taken from the iOS SDK's source code for the UIView class:
//
[Export ("initWithFrame:")]
public UIView (CGRect frame) : base (NSObjectFlag.Empty)
{
    // Invoke the init method now.
    var initWithFrame = new Selector ("initWithFrame:").Handle;
    if (IsDirectBinding) {
        Handle = ObjCRuntime.Messaging.IntPtr_objc_msgSend_CGRect (this.Handle, initWithFrame, frame);
    } else {
        Handle = ObjCRuntime.Messaging.IntPtr_objc_msgSendSuper_CGRect (this.SuperHandle, initWithFrame, frame);
    }
}

Dotyczy

PDEPlugInCallbackProtocol(NativeHandle)

Konstruktor używany podczas tworzenia zarządzanych reprezentacji niezarządzanych obiektów. Wywoływane przez środowisko uruchomieniowe.

[ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)]
protected internal PDEPlugInCallbackProtocol(ObjCRuntime.NativeHandle handle);
[<ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)>]
new PrintCore.PDEPlugInCallbackProtocol : ObjCRuntime.NativeHandle -> PrintCore.PDEPlugInCallbackProtocol

Parametry

handle
NativeHandle

Wskaźnik (uchwyt) do niezarządzanych obiektów.

Atrybuty

Uwagi

Ten konstruktor jest wywoływany przez infrastrukturę środowiska uruchomieniowego (GetNSObject(IntPtr)), aby utworzyć nową zarządzaną reprezentację wskaźnika dla niezarządzanego obiektu Objective-C. Deweloperzy nie powinni wywoływać tej metody bezpośrednio, zamiast tego powinni wywołać GetNSObject(IntPtr) metodę , ponieważ zapobiegnie dwóm wystąpieniom obiektu zarządzanego wskazującego ten sam obiekt macierzysty.

Dotyczy