PDEPlugIn Costruttori

Definizione

Overload

Nome Descrizione
PDEPlugIn()

Crea un nuovo PDEPlugIn oggetto con valori predefiniti.

PDEPlugIn(NSObjectFlag)

Costruttore da chiamare sulle classi derivate per ignorare l'inizializzazione e semplicemente allocare l'oggetto.

PDEPlugIn(NativeHandle)

Costruttore utilizzato durante la creazione di rappresentazioni gestite di oggetti non gestiti. Chiamato dal runtime.

PDEPlugIn()

Crea un nuovo PDEPlugIn oggetto con valori predefiniti.

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

Si applica a

PDEPlugIn(NSObjectFlag)

Costruttore da chiamare sulle classi derivate per ignorare l'inizializzazione e semplicemente allocare l'oggetto.

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

Parametri

t
NSObjectFlag

Valore sentinel inutilizzato, passare NSObjectFlag.Empty.

Attributi

Commenti

Questo costruttore deve essere chiamato dalle classi derivate quando costruiscono completamente l'oggetto nel codice gestito e vogliono semplicemente che il runtime alloca e inizializzi .NSObject Questa operazione è necessaria per implementare il processo di inizializzazione in due passaggi che Objective-C usa, il primo passaggio consiste nell'eseguire l'allocazione di oggetti, il secondo passaggio consiste nell'inizializzare l'oggetto. Quando gli sviluppatori richiamano questo costruttore, sfruttano un percorso diretto che va fino a NSObject allocare semplicemente la memoria dell'oggetto e associano gli oggetti Objective-C e C#. L'inizializzazione effettiva dell'oggetto spetta allo sviluppatore.

Questo costruttore viene in genere usato dal generatore di associazioni per allocare l'oggetto, ma impedisce l'inizializzazione effettiva. Una volta eseguita l'allocazione, il costruttore deve inizializzare l'oggetto. Con i costruttori generati dal generatore di associazioni questo significa che richiama manualmente uno dei metodi "init" per inizializzare l'oggetto.

È responsabilità dello sviluppatore inizializzare completamente l'oggetto se esegue la concatenamento tramite questa catena di costruttori.

In generale, se il costruttore dello sviluppatore richiama l'implementazione di base corrispondente, deve anche chiamare un metodo init Objective-C. In caso contrario, gli sviluppatori devono invece concatenare il costruttore appropriato nella relativa classe.

Il valore dell'argomento viene ignorato e garantisce semplicemente che l'unico codice eseguito sia la fase di costruzione sia l'allocazione di base NSObject e la registrazione del tipo di runtime. In genere il concatenamento sarà simile al seguente:

//
// 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);
    }
}

Si applica a

PDEPlugIn(NativeHandle)

Costruttore utilizzato durante la creazione di rappresentazioni gestite di oggetti non gestiti. Chiamato dal runtime.

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

Parametri

handle
NativeHandle

Puntatore (handle) all'oggetto non gestito.

Attributi

Commenti

Questo costruttore viene richiamato dall'infrastruttura di runtime (GetNSObject(IntPtr)) per creare una nuova rappresentazione gestita per un puntatore a un oggetto Objective-C non gestito. Gli sviluppatori non devono richiamare direttamente questo metodo, ma devono chiamare GetNSObject(IntPtr) perché impediranno due istanze di un oggetto gestito che puntano allo stesso oggetto nativo.

Si applica a