Необычная проблема с установкой символа новой строки в искровой текстовой области - PullRequest
0 голосов
/ 17 июня 2011

У меня есть текстовая область Spark, которая содержит следующий текст: "text1 \ ntext2 \ ntext3"

Текст выше показан как 3 слова каждое в отдельной строке.

text1

text2

text3

Ok

Теперь я хочу стилизовать текст и добавить цвет фона:

var tmp:String = textArea.text.replace("\n", '</span><br/><span backgroundColor="#B22300">');
textArea.textFlow = spark.utils.TextFlowUtil.importFromString('<span backgroundColor="#B22300">'+tmp+'</span>');

результат: это не работает.Текст отображается с цветом фона, но в 2 строки:

text1

text2 text3

Итак, мой вопрос: что я делаю не так?

Ответы [ 2 ]

1 голос
/ 17 июня 2011

в вашем примере вы пишете:

text1 \ ntext2 \ text3

Я предполагаю, что вы хотели написать это:

text1 \ ntext2 \ ntext3

, и в этом случае я считаю, что он заменяет только последний экземпляр символа новой строки.попробуйте использовать регулярное выражение с глобальным флагом:

var tmp:String = textArea.text.replace(new RegExp("\\n", "g"), "</span><br/><span backgroundColor = \"#B22300\">");
0 голосов
/ 17 июня 2011

Просто из любопытства, что происходит, когда вы меняете <br/> на <br />? Технически это было бы более правильно, и я держу пари, что Флэш оценит закрытие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...