ActionScript удаляет пробелы, когда это не должно - PullRequest
0 голосов
/ 22 января 2010

Я использую URLLoader в проекте ActionScript для чтения некоторых XML. Затем я обрабатываю его и помещаю в текстовое поле. Все выглядит хорошо. Однако я не хочу, чтобы XML был внешним по отношению к моему SWF. Итак, я сделал это:

var internalXML:XML = <Content><P>It was in <City>Paris</City> that I first 
took a <Activity>walk in nature</Activity>.</P></Content>

То есть я взял идентичный XML и присвоил его экземпляру объекта XML непосредственно в своем ActionScript. Затем я запускаю точно такой же процесс. Но на этот раз пробелы были удалены между любым содержимым тега XML и простым текстом.

Таким образом, вышеприведенный текст в текстовом поле гласит: «Именно в Париже я впервые прогулялся по природе».

В обоих случаях у меня есть XML.ignoreWhitespace = false. Я также попробовал XML.prettyPrinting = false. Без помощи.

Кто-нибудь знает, что может происходить?

1 Ответ

1 голос
/ 22 января 2010

Вероятно, обрезка пробелов происходит во время компиляции, а не во время выполнения (отсюда и неэффективность XML.IgnoreWhitespace).

Чтобы дословно сохранить XML до времени выполнения (как это было, когда вы загружали его раньше), просто поместите его в строку:

var internalXML:XML = XML("<Content><P>It was in <City>Paris</City> that I first took a <Activity>walk in nature</Activity>.</P></Content>")

...