NSDictionary 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
NSDictionary() |
Constructor predeterminado que inicializa una nueva instancia de esta clase sin parámetros. |
NSDictionary(NSCoder) |
Constructor que inicializa el objeto a partir de los datos almacenados en el objeto unarchiver. |
NSDictionary(NSDictionary) |
Crea un nuevo NSDictionary a partir de un NSDictionary existente. |
NSDictionary(NSObjectFlag) |
Constructor para llamar a en clases derivadas para omitir la inicialización y simplemente asignar el objeto. |
NSDictionary(NSUrl) |
Crea un nuevo diccionario a partir del contenido de un PropertyList ubicado en una dirección URL especificada. |
NSDictionary(IntPtr) |
Constructor utilizado al crear representaciones administradas de objetos no administrados; Lo llama el tiempo de ejecución. |
NSDictionary(String) |
Crea un nuevo diccionario a partir del contenido de un PropertyList ubicado en el archivo especificado. |
NSDictionary(NSDictionary, Boolean) | |
NSDictionary(NSUrl, NSError) | |
NSDictionary(NSObject, NSObject, NSObject[]) |
Crea un NSDictionary a partir de una lista de claves NSObject y valores NSObject. |
NSDictionary(Object, Object, Object[]) |
Crea un NSDictionary a partir de una lista de claves y valores. |
NSDictionary()
Constructor predeterminado que inicializa una nueva instancia de esta clase sin parámetros.
[Foundation.Export("init")]
[ObjCRuntime.DesignatedInitializer]
public NSDictionary ();
- Atributos
Se aplica a
NSDictionary(NSCoder)
Constructor que inicializa el objeto a partir de los datos almacenados en el objeto unarchiver.
[Foundation.Export("initWithCoder:")]
[ObjCRuntime.DesignatedInitializer]
public NSDictionary (Foundation.NSCoder coder);
new Foundation.NSDictionary : Foundation.NSCoder -> Foundation.NSDictionary
Parámetros
- coder
- NSCoder
Objeto unarchiver.
- Atributos
Comentarios
Este constructor se proporciona para permitir que la clase se inicialice desde un archivador (por ejemplo, durante la deserialización de NIB). Esto forma parte del NSCoding protocolo.
Si los desarrolladores quieren crear una subclase de este objeto y seguir admitiendo la deserialización desde un archivo, deben implementar un constructor con una firma idéntica: tomar un único parámetro de tipo NSCoder y decorarlo con la declaración de atributo [Export("initWithCoder:"].
El estado de este objeto también se puede serializar mediante el método complementario EncodeTo.
Se aplica a
NSDictionary(NSDictionary)
Crea un nuevo NSDictionary a partir de un NSDictionary existente.
[Foundation.Export("initWithDictionary:")]
public NSDictionary (Foundation.NSDictionary other);
new Foundation.NSDictionary : Foundation.NSDictionary -> Foundation.NSDictionary
Parámetros
- other
- NSDictionary
Diccionario de origen.
- Atributos
Se aplica a
NSDictionary(NSObjectFlag)
Constructor para llamar a en clases derivadas para omitir la inicialización y simplemente asignar el objeto.
protected NSDictionary (Foundation.NSObjectFlag t);
new Foundation.NSDictionary : Foundation.NSObjectFlag -> Foundation.NSDictionary
Parámetros
Valor centinela sin usar, pase NSObjectFlag.Empty.
Comentarios
Las clases derivadas deben llamar a este constructor cuando construyen completamente el objeto en código administrado y simplemente quieren que el tiempo de ejecución asigne e inicialice el objeto NSObject. Esto es necesario para implementar el proceso de inicialización en dos pasos que usa Objective-C, el primer paso es realizar la asignación de objetos; el segundo paso es inicializar el objeto. Cuando los desarrolladores invocan al constructor que toma NSObjectFlag.Empty, aprovechan una ruta de acceso directa que va hasta NSObject para asignar simplemente la memoria del objeto y enlazar los objetos Objective-C y C# juntos. La inicialización real del objeto es hasta 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 la ruta de acceso NSObjectFlag.Empty.
En general, si el constructor del desarrollador invoca la implementación base NSObjectFlag.Empty, debe llamar a un método init de Objective-C. Si este no es el caso, 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 de NSObject y el registro del tipo en tiempo de ejecución. Normalmente, el encadenamiento tendría el siguiente aspecto:
//
// The NSObjectFlag merely allocates the object and registers the
// C# class with the Objective-C runtime if necessary, but no actual
// initXxx method is invoked, that is done later in the constructor
//
// This is taken from Xamarin.iOS's source code:
//
[Export ("initWithFrame:")]
public UIView (System.Drawing.RectangleF 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);
}
Se aplica a
NSDictionary(NSUrl)
Crea un nuevo diccionario a partir del contenido de un PropertyList ubicado en una dirección URL especificada.
[Foundation.Export("initWithContentsOfURL:")]
public NSDictionary (Foundation.NSUrl url);
new Foundation.NSDictionary : Foundation.NSUrl -> Foundation.NSDictionary
Parámetros
- url
- NSUrl
Dirección URL al recurso que contiene un NSDictionary en formato PropertyList.
- Atributos
Se aplica a
NSDictionary(IntPtr)
Constructor utilizado al crear representaciones administradas de objetos no administrados; Lo llama el tiempo de ejecución.
protected internal NSDictionary (IntPtr handle);
new Foundation.NSDictionary : nativeint -> Foundation.NSDictionary
Parámetros
- handle
-
IntPtr
nativeint
Puntero (identificador) al objeto no administrado.
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 al método GetNSObject, ya que impedirá que dos instancias de un objeto administrado apunten al mismo objeto nativo.
Se aplica a
NSDictionary(String)
Crea un nuevo diccionario a partir del contenido de un PropertyList ubicado en el archivo especificado.
[Foundation.Export("initWithContentsOfFile:")]
public NSDictionary (string fileName);
new Foundation.NSDictionary : string -> Foundation.NSDictionary
Parámetros
- fileName
- String
Archivo que contiene un diccionario con formato lista de propiedades.
- Atributos
Se aplica a
NSDictionary(NSDictionary, Boolean)
[Foundation.Export("initWithDictionary:copyItems:")]
public NSDictionary (Foundation.NSDictionary other, bool copyItems);
new Foundation.NSDictionary : Foundation.NSDictionary * bool -> Foundation.NSDictionary
Parámetros
- other
- NSDictionary
- copyItems
- Boolean
- Atributos
Se aplica a
NSDictionary(NSUrl, NSError)
[Foundation.Export("initWithContentsOfURL:error:")]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.WatchOS, 4, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.TvOS, 11, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.MacOSX, 10, 13, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 11, 0, ObjCRuntime.PlatformArchitecture.All, null)]
public NSDictionary (Foundation.NSUrl url, out Foundation.NSError error);
new Foundation.NSDictionary : Foundation.NSUrl * -> Foundation.NSDictionary
Parámetros
- url
- NSUrl
- error
- NSError
- Atributos
Se aplica a
NSDictionary(NSObject, NSObject, NSObject[])
Crea un NSDictionary a partir de una lista de claves NSObject y valores NSObject.
public NSDictionary (Foundation.NSObject first, Foundation.NSObject second, params Foundation.NSObject[] args);
new Foundation.NSDictionary : Foundation.NSObject * Foundation.NSObject * Foundation.NSObject[] -> Foundation.NSDictionary
Parámetros
- first
- NSObject
Primera tecla.
- second
- NSObject
Primer valor.
- args
- NSObject[]
Pais restante de claves y valores.
Comentarios
La lista de claves y valores se usa para crear el diccionario. El número de parámetros pasados a esta función debe ser par.
var key1 = new NSString ("key1");
var value1 = new NSNumber ((byte) 1);
var key2 = new NSString ("key2");
var value2 = new NSNumber ((byte) 2);
var dict2 = new NSDictionary (key1, value1, key2, value2);
Se aplica a
NSDictionary(Object, Object, Object[])
Crea un NSDictionary a partir de una lista de claves y valores.
public NSDictionary (object first, object second, params object[] args);
new Foundation.NSDictionary : obj * obj * obj[] -> Foundation.NSDictionary
Parámetros
- first
- Object
Primera tecla.
- second
- Object
Primer valor.
- args
- Object[]
Pais restante de claves y valores.
Comentarios
Cada objeto de C# se conversión boxed como un objeto NSObject mediante una llamada a FromObject(Object).
La lista de claves y valores se usa para crear el diccionario. El número de parámetros pasados a esta función debe ser par.
//
// Using C# objects, strings and ints, produces
// a dictionary with 2 NSString keys, "key1" and "key2"
// and two NSNumbers with the values 1 and 2
//
var dict = new NSDictionary ("key1", 1, "key2", 2);