2009-07-01 21 views
6

Ho già cercato su Google e leggere molti argomenti diversi relativi a questo problema, ma non riesco ancora a risolvere il mio. Ho questo campo di testo dinamico in un Movie Clip, e ho incorporato maiuscole, minuscole e numeri. Ho esportato il clip filmato , quindi l'ho usato nella mia classe e sta caricando i dati da xml.Incorporamento di caratteri in grassetto nel campo dinamico Flash AS3

Tuttavia, dopo aver incorporato i caratteri in grassetto, ha smesso di visualizzare i dati da xml, se uso regolarmente, va bene. Poi ho creato un simbolo di carattere e ho aggiunto il carattere in grassetto nella libreria, ma non mi dà ancora niente.

Qualcuno sa come risolvere questo problema?

grazie.

risposta

2

Il modo più semplice per risolvere questo problema è creare un set di campi di testo fuori dallo schermo. Ogni campo gestirà l'incorporamento per una combinazione di font e peso singola di cui hai bisogno. Ad esempio, se hai bisogno di un normale carattere, grassetto, corsivo e sia grassetto che corsivo per un singolo font, avrai 4 campi di testo, ognuno con incorporamento attivato e i caratteri che devi selezionare.

Quindi è possibile semplicemente attivare l'incorporamento dei caratteri per qualsiasi altro campo di testo e sarà in grado di utilizzare tutti e quattro gli stili (di quel tipo di carattere).

1

Suppongo che si stia utilizzando una delle versioni recenti di Flash IDE.

Mi sembra un conflitto. Se hai un altro campo di testo in quel film con lo stesso carattere e peso ma non impostato sul carattere incorporato, ci sarebbe un conflitto silenzioso (e fastidioso). La soluzione è assicurarsi che tutti i campi di testo, inclusi statico e input, siano impostati sul font nell'elenco dei caratteri con l'asterisco, ad esempio Arial *.

Se ciò non risolve il problema per te, ti suggerisco di incorporare il carattere utilizzando il tag MXML [embed] (solo cs4). Lee Brimelow ha un ottimo video tutorial su questa tecnica è possibile vederlo a gotoAndLearn.

Ho avuto qualche problema con i font incorporati prima e il tag embed l'ha corretto per me. Dai un'occhiata a my post e vedi se è d'aiuto.

2

Ho provato a cambiare ogni istanza con il font della versione integrata senza successo. ERO tuttavia, in grado di utilizzare la soluzione proposta sulla Adobe forum qui:

http://forums.adobe.com/thread/716363

Invece di utilizzare myTextFieldInstance.text, utilizzare myTextFieldInstance.htmlText e specificare "<b>" + yourStringValue + "</b>" durante l'assegnazione. Mentre kludgey al massimo, è stata una soluzione facile al problema.

0

C'è sicuramente un problema con l'applicazione del font di tipo Bold.

Il carattere non è impostato come BOLD con il seguente codice, se si aggiorna il testo in un secondo momento in modo dinamico nel codice.

var myTextFormat:TextFormat = new TextFormat(); 
myTextFormat.font = "Arial"; 
myTextFormat.bold = true; 
myTextField.setTextFormat(myTextFormat); 

// 
myTextField.text = "some dynamic text"; 

Invece, è necessario applicare il formato di testo ogni volta che si aggiorna il testo.

var myTextFormat:TextFormat = new TextFormat(); 
myTextFormat.font = "Arial"; 
myTextFormat.bold = true; 

// 
myTextField.text = "some dynamic text"; 
myTextField.setTextFormat(myTextFormat); 

Ma, io in genere impostarlo come carattere predefinito come mostrato qui sotto,

var myTextFormat:TextFormat = new TextFormat(); 
myTextFormat.font = "Arial"; 
myTextFormat.bold = true; 
myTextField.defaultTextFormat = myTextFormat; 

// 
myTextField.text = "some dynamic text"; 

Non è un modo perfetto per il progetto robusto ma funziona.

Problemi correlati