PDA

Просмотр полной версии : Вывод настроек в xml


ice_d
11.01.2014, 13:45
Нужна помощь. Есть флешка на AS3, необходимо для нее вывести некоторые настройки в файл xml для того, чтобы пользователи могли настроить некоторые параметры. Как это сделать?

Isfet
11.01.2014, 14:03
для каждого пользователя хранить xml-файл на сервере , или в базе данных, грузить его при запуске флешки и парсить, как его будут редактирова решать вам - или с сайта или из флешки

ice_d
11.01.2014, 14:16
для каждого пользователя хранить xml-файл на сервере , или в базе данных, грузить его при запуске флешки и парсить, как его будут редактирова решать вам - или с сайта или из флешки
Все на много проще. Флешка хранится у пользователя с файлом настроек xml. Никаких передач данных в инет не нужно.
Для примера, в флешке имеются часы. В xml файле пользователь настраивает формат часов, шрифт, цвет и т.п.
Мне нужно знать как подключить этот xml файл к флешке. Делаю в adobe flash cs 5.5.
Может кто знает пример какой-то или книгу или уроки в инете. Буду очень признателен.

Isfet
11.01.2014, 14:18
ну значит надо просто загрузить файл локально через FileReference

ice_d
11.01.2014, 21:03
Спасибо за помощь. А файлов примеров с выводом настроек в xml нет?
По примерам проще понять логику работы.

ZackMercury
12.01.2014, 03:33
ice_d, зачем вам так мучаться, когда есть SharedObject?

udaaff
12.01.2014, 12:40
Если у вас флешка локальная, возможно, стоит в сторону Air посмотреть, статья по теме http://www.adobe.com/devnet/air/flex/quickstart/articles/xml_prefs.html

ice_d
16.01.2014, 12:53
Сделал загрузку данных из XML (URLLoader и URLRequest). Данные подгружаются.
Но не могу сообразить почему все параметры работают кроме bold. Что делаю не так?

В файле XML такие строки (пример):
<main>
<Config visible="true">
<text font="Calibri" size="20" color="0xCCCCCC" alpha="1" align="center" bold="false"/>
</ConfigClock>
</main>

В флеше код:
var txtField:TextField;
var xFormat:TextFormat = new TextFormat();
txtField.alpha = xml.Config.text.@alpha;
xFormat.size = xml.Config.text.@size;
xFormat.color = xml.Config.text.@color;
xFormat.align = xml.Config.text.@align;
xFormat.bold = xml.Config.text.@bold;
xFormat.font = xml.Config.text.@font;
txtField.defaultTextFormat = xFormat;

TWETTI
16.01.2014, 13:55
Потому, что xml.Config.text.@bold это строка "false". Чтобы текст был не жирным, надо чтобы свойству xFormat.bold присваивалось булево значение false. Для этого сделайте так:
xFormat.bold = xml.Config.text.@bold == "true";
То есть если "true" то будет жирным, в остальных случаях не будет.

ice_d
16.01.2014, 14:37
Потому, что xml.Config.text.@bold это строка "false". Чтобы текст был не жирным, надо чтобы свойству xFormat.bold присваивалось булево значение false. Для этого сделайте так:
xFormat.bold = xml.Config.text.@bold == "true";
То есть если "true" то будет жирным, в остальных случаях не будет.
Спасибо за помощь.

Добавлено через 26 часов 6 минут
Еще возник вопрос. Каким образом сделать, чтобы из строки format (из XML) текстовому полю присвоился формат часов, чтобы в результате было "13:51:18". И, к примеру, если строку format изменить на "h-m", результат получился "13-51"?
<main>
<Config>
<format>h:m:s</format>
</Config>
</main>

Добавлено через 26 часов 58 минут
Сделал с помощью String.split("{{h}}").join(hour).
Меняет {{h}} на значение из hour.