SFAuthorizationViewDelegate Constructores
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
| Nombre | Description |
|---|---|
| SFAuthorizationViewDelegate() |
Crea un nuevo SFAuthorizationViewDelegate con valores predeterminados. |
| SFAuthorizationViewDelegate(NSObjectFlag) |
Constructor para llamar a en clases derivadas para omitir la inicialización y simplemente asignar el objeto. |
| SFAuthorizationViewDelegate(NativeHandle) |
Constructor usado al crear representaciones administradas de objetos no administrados. Llamado por el tiempo de ejecución. |
SFAuthorizationViewDelegate()
Crea un nuevo SFAuthorizationViewDelegate con valores predeterminados.
[Foundation.Export("init")]
[ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)]
public SFAuthorizationViewDelegate();
- Atributos
Se aplica a
SFAuthorizationViewDelegate(NSObjectFlag)
Constructor para llamar a en clases derivadas para omitir la inicialización y simplemente asignar el objeto.
[ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)]
protected SFAuthorizationViewDelegate(Foundation.NSObjectFlag t);
[<ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)>]
new SecurityInterface.SFAuthorizationViewDelegate : Foundation.NSObjectFlag -> SecurityInterface.SFAuthorizationViewDelegate
Parámetros
Valor de sentinel sin usar, pase NSObjectFlag.Empty.
- Atributos
Comentarios
Las clases derivadas deben llamar a este constructor cuando construyen completamente el objeto en código administrado y simplemente quieren que el entorno de ejecución asigne e inicialice .NSObject Esto es necesario para implementar el proceso de inicialización en dos pasos que Objective-C usa, el primer paso es realizar la asignación de objetos, el segundo paso consiste en inicializar el objeto. Cuando los desarrolladores invocan este constructor, aprovechan una ruta de acceso directa que va hasta simplemente NSObject asignar la memoria del objeto y enlazar los objetos Objective-C y C# juntos. La inicialización real del objeto es para el desarrollador.
Normalmente, el generador de enlaces usa este constructor para asignar el objeto, pero impide que se produzca la inicialización real. Una vez realizada la asignación, el constructor tiene que inicializar el objeto. Con los constructores generados por el generador de enlaces, esto significa que invoca manualmente uno de los métodos "init" para inicializar el objeto.
Es responsabilidad del desarrollador inicializar completamente el objeto si se encadenan mediante esta cadena de constructores.
En general, si el constructor del desarrollador invoca la implementación base correspondiente, también debe llamar a un método init de Objective-C. Si no es así, los desarrolladores deben encadenar al constructor adecuado en su clase.
El valor del argumento se omite y simplemente garantiza que el único código que se ejecuta es la fase de construcción es la asignación básica NSObject y el registro de tipos en tiempo de ejecución. Normalmente, el encadenamiento tendría este aspecto:
//
// 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 {
unsafe {
var __objc_super__ = new ObjCRuntime.ObjCSuper (this);
Handle = ObjCRuntime.Messaging.IntPtr_objc_msgSendSuper_CGRect (&__objc_super__, initWithFrame, frame);
}
GC.KeepAlive (this);
}
}
Se aplica a
SFAuthorizationViewDelegate(NativeHandle)
Constructor usado al crear representaciones administradas de objetos no administrados. Llamado por el tiempo de ejecución.
[ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)]
protected internal SFAuthorizationViewDelegate(ObjCRuntime.NativeHandle handle);
[<ObjCRuntime.BindingImpl(ObjCRuntime.BindingImplOptions.GeneratedCode | ObjCRuntime.BindingImplOptions.Optimizable)>]
new SecurityInterface.SFAuthorizationViewDelegate : ObjCRuntime.NativeHandle -> SecurityInterface.SFAuthorizationViewDelegate
Parámetros
- handle
- NativeHandle
Puntero (identificador) al objeto no administrado.
- Atributos
Comentarios
La infraestructura en tiempo de ejecución (GetNSObject(IntPtr)) invoca este constructor para crear una nueva representación administrada para un puntero a un objeto Objective-C no administrado. Los desarrolladores no deben invocar este método directamente, sino que deben llamar GetNSObject(IntPtr) a , ya que impedirá dos instancias de un objeto administrado que apunte al mismo objeto nativo.