2013-05-27 10 views
5

Lo vedo in molti progetti che dimostrano l'uso di CAEmitterLayer, ma come si traduce in MonoTouch aka Xamarin.iOS?Come implementare + (Class) layerClass in Xamarin.iOS?

+ (Class) layerClass 
{ 
    //configure the UIView to have emitter layer 
    return [CAEmitterLayer class]; 
} 

So che posso usare UIView.Layer.AddSubLayer(), ma sembra che ci sia impatto sulle prestazioni.

risposta

11

Penso che sia necessario esporlo al runtime Obj come il seguente.

[Export ("layerClass")] 
public static Class LayerClass() { 
    return new Class (typeof (CAEmitterLayer)); 
} 

Per ulteriori informazioni un'occhiata a MonoTouch... CATiledLayer example.

Spero che aiuti.

P.S. Controlla il codice. Ho scritto senza il supporto di Xamarin Studio.

+0

Opere! Grazie! È interessante notare che la classe layer non ha bisogno né di un IntPtr c'tor, né di un RegisterAttribute. – Krumelur

+0

Prego. Ho avuto la stessa esperienza con la classe 'UIPopoverBackgroundView'. –

+0

@Krumelur Contrassegna la mia risposta come corretta, se lo desideri;) –