Condividi tramite


UIImage Costruttori

Definizione

Overload

UIImage()

Costruttore predefinito che inizializza una nuova istanza di questa classe senza parametri.

UIImage(CIImage, nfloat, UIImageOrientation)

Costruisce un nuovo UIImage oggetto supportato da , ridimensionato e orientato come specificato.

UIImage(CGImage, nfloat, UIImageOrientation)
UIImage(String)

Crea un UIImage oggetto caricando dal nome file specificato.

UIImage(IntPtr)

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

UIImage(NSData, nfloat)

Costruisce un oggetto UIImage dall'oggetto specificato data, ridimensionato dal scale fattore .

UIImage(NSData)

Crea una nuova immagine UIImage dai dati dell'immagine forniti.

UIImage(NSCoder)

Costruttore che inizializza l'oggetto dai dati archiviati nell'oggetto unarchiver.

UIImage(CIImage)

Crea una nuova immagine UIImage dall'immagine core fornita.

UIImage(CGImage)

Crea una nuova immagine UIImage dall'immagine Grafica principale fornita.

UIImage(NSObjectFlag)

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

UIImage()

Costruttore predefinito che inizializza una nuova istanza di questa classe senza parametri.

[Foundation.Export("init")]
public UIImage ();
Attributi

Commenti

Può essere usato da un thread in background.

Si applica a

UIImage(CIImage, nfloat, UIImageOrientation)

Costruisce un nuovo UIImage oggetto supportato da , ridimensionato e orientato come specificato.

[Foundation.Export("initWithCIImage:scale:orientation:")]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 6, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.ThreadSafe]
public UIImage (CoreImage.CIImage ciImage, nfloat scale, UIKit.UIImageOrientation orientation);
new UIKit.UIImage : CoreImage.CIImage * nfloat * UIKit.UIImageOrientation -> UIKit.UIImage

Parametri

ciImage
CIImage
scale
nfloat
orientation
UIImageOrientation
Attributi

Commenti

(È disponibile una documentazione più dettagliata per questo nodo)

Può essere usato da un thread in background.

Si applica a

UIImage(CGImage, nfloat, UIImageOrientation)

[Foundation.Export("initWithCGImage:scale:orientation:")]
[ObjCRuntime.ThreadSafe]
public UIImage (CoreGraphics.CGImage cgImage, nfloat scale, UIKit.UIImageOrientation orientation);
new UIKit.UIImage : CoreGraphics.CGImage * nfloat * UIKit.UIImageOrientation -> UIKit.UIImage

Parametri

cgImage
CGImage
scale
nfloat
orientation
UIImageOrientation
Attributi

Commenti

(È disponibile una documentazione più dettagliata per questo nodo)

Può essere usato da un thread in background.

Si applica a

UIImage(String)

Crea un UIImage oggetto caricando dal nome file specificato.

[Foundation.Export("initWithContentsOfFile:")]
[ObjCRuntime.ThreadSafe]
public UIImage (string filename);
new UIKit.UIImage : string -> UIKit.UIImage

Parametri

filename
String

Percorso di un file di immagine supportato.

Attributi

Commenti

L'immagine non verrà memorizzata nella cache.

Può essere usato da un thread in background.

Si applica a

UIImage(IntPtr)

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

protected internal UIImage (IntPtr handle);
new UIKit.UIImage : nativeint -> UIKit.UIImage

Parametri

handle
IntPtr

nativeint

Puntatore (handle) all'oggetto non gestito.

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 il metodo GetNSObject perché impedirà a due istanze di un oggetto gestito di puntare allo stesso oggetto nativo.

Si applica a

UIImage(NSData, nfloat)

Costruisce un oggetto UIImage dall'oggetto specificato data, ridimensionato dal scale fattore .

[Foundation.Export("initWithData:scale:")]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 6, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.ThreadSafe]
public UIImage (Foundation.NSData data, nfloat scale);
new UIKit.UIImage : Foundation.NSData * nfloat -> UIKit.UIImage

Parametri

data
NSData

Dati di immagine da un file o dati creati a livello di codice.

scale
nfloat

Una dimensione pari a 1.0 produce un'immagine di dimensioni intere rispetto a data.

Attributi

Commenti

(È disponibile una documentazione più dettagliata per questo nodo)

Può essere usato da un thread in background.

Si applica a

UIImage(NSData)

Crea una nuova immagine UIImage dai dati dell'immagine forniti.

[Foundation.Export("initWithData:")]
[ObjCRuntime.ThreadSafe]
public UIImage (Foundation.NSData data);
new UIKit.UIImage : Foundation.NSData -> UIKit.UIImage

Parametri

data
NSData

Oggetto NSData contenente i dati dell'immagine.

Attributi

Commenti

L'oggetto NSData deve corrispondere a uno dei tipi di immagine supportati.

Può essere usato da un thread in background.

Si applica a

UIImage(NSCoder)

Costruttore che inizializza l'oggetto dai dati archiviati nell'oggetto unarchiver.

[Foundation.Export("initWithCoder:")]
[ObjCRuntime.DesignatedInitializer]
public UIImage (Foundation.NSCoder coder);
new UIKit.UIImage : Foundation.NSCoder -> UIKit.UIImage

Parametri

coder
NSCoder

Oggetto unarchiver.

Attributi

Commenti

Questo costruttore viene fornito per consentire l'inizializzazione della classe da un nonrchiver , ad esempio durante la deserializzazione NIB. Fa parte del NSCoding protocollo.

Se gli sviluppatori vogliono creare una sottoclasse di questo oggetto e continuare a supportare la deserializzazione da un archivio, devono implementare un costruttore con una firma identica: accettando un singolo parametro di tipo NSCoder e decorarlo con la dichiarazione di attributo [Export("initWithCoder:"].

Lo stato di questo oggetto può essere serializzato anche usando il metodo complementare EncodeTo.

Si applica a

UIImage(CIImage)

Crea una nuova immagine UIImage dall'immagine core fornita.

[Foundation.Export("initWithCIImage:")]
[ObjCRuntime.ThreadSafe]
public UIImage (CoreImage.CIImage ciImage);
new UIKit.UIImage : CoreImage.CIImage -> UIKit.UIImage

Parametri

ciImage
CIImage

Un oggetto CIImage.

Attributi

Commenti

Può essere usato da un thread in background.

Si applica a

UIImage(CGImage)

Crea una nuova immagine UIImage dall'immagine Grafica principale fornita.

[Foundation.Export("initWithCGImage:")]
[ObjCRuntime.ThreadSafe]
public UIImage (CoreGraphics.CGImage cgImage);
new UIKit.UIImage : CoreGraphics.CGImage -> UIKit.UIImage

Parametri

cgImage
CGImage

Un oggetto CGImage.

Attributi

Commenti

Può essere usato da un thread in background.

Si applica a

UIImage(NSObjectFlag)

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

protected UIImage (Foundation.NSObjectFlag t);
new UIKit.UIImage : Foundation.NSObjectFlag -> UIKit.UIImage

Parametri

t
NSObjectFlag

Valore sentinel inutilizzato, passare NSObjectFlag.Empty.

Commenti

Questo costruttore deve essere chiamato dalle classi derivate quando costruiscono completamente l'oggetto nel codice gestito e vogliono semplicemente che il runtime allochi e inizializzi NSObject. Questa operazione è necessaria per implementare il processo di inizializzazione in due passaggi usato da Objective-C, il primo passaggio consiste nell'eseguire l'allocazione dell'oggetto, il secondo passaggio consiste nell'inizializzare l'oggetto. Quando gli sviluppatori richiamano il costruttore che accetta NSObjectFlag.Empty sfruttano un percorso diretto che va fino a NSObject per allocare semplicemente la memoria dell'oggetto e associare 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 che venga eseguita l'inizializzazione effettiva. Dopo aver eseguito l'allocazione, il costruttore deve inizializzare l'oggetto. Con i costruttori generati dal generatore di binding, ciò significa che richiama manualmente uno dei metodi "init" per inizializzare l'oggetto.

È responsabilità dello sviluppatore inizializzare completamente l'oggetto se esegue la concatenamento usando il percorso NSObjectFlag.Empty.

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

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

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

Si applica a