2009-02-10 16 views
8

Ho alcuni sprite che gli utenti possono manipolare, trascinare e ridimensionare. Ora mi piacerebbe poter visualizzare il testo in quegli sprite. Ho provato un sacco di modi, probabilmente stupidi. Come ereditare da Label e aggiungere un figlio Label allo sprite, ma non viene visualizzato alcun testo.Come si disegna un testo in uno sprite di ActionScript 3?

Una cosa inquietante: Eredita dall'etichetta Ho il testo che viene visualizzato se corro nel debugger e ispeziono l'istanza della sottoclasse Label.

Ho questa sensazione mi manca qualcosa di veramente ovvio. Come è fatto, nel modo giusto?

risposta

19

Vorrei andare con qualcosa di più di basso livello di Label. Utilizzare un TextField e aggiungerlo come un bambino per la Sprite:

var text:TextField = new TextField(); 
text.text = "hello world"; 
addChild(text); 

Nota: il testo non verrà visualizzato se la Sprite è ruotato e caratteri non sono incorporati.

+1

Grazie! Questo stava iniziando a farmi impazzire. Qualche idea sul perché non funziona usando un'etichetta? – PEZ

-1

Aggiungi una nuova etichetta come figlio del tuo oggetto sprite.

+2

che non funziona per qualche motivo. L'aggiunta di un campo di testo funziona, ma ha alcuni effetti collaterali che ora devo risolvere. – PEZ

5

si dovrebbe leggere sul display list

var s:Sprite = new Sprite(); 
var txt:TextField = new TextField(); 
txt.text ="here is same text"; 
s.addChild(txt); 
+0

+1 per il collegamento dell'elenco di visualizzazione. – PEZ