Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Flash > xml + flash


Автор: StachelDraht 12.12.2007, 10:31
Привет!
Передо мной стоит задача: создать на флэше маленький такой мувик в который из вне будет подгружаться картинка при нажатии на которую мы переходим по ссылке.
Все это должно быть завязано на xml
xml файл то я написал, эт дело не хитрое.
Как теперь подключить этот xml файл во флэш и выдергивать из него инфу.
Спасибо!

Автор: Maksys 12.12.2007, 13:48
Ищи  класс XML, XMLNode, XMLSocket, XMLUI

Автор: StachelDraht 12.12.2007, 13:54
Maksys, спасибо!
У меня еще будут вопросы.

Автор: StachelDraht 13.12.2007, 09:53
Други!
Объясните пожалуйста, как картинки вставить.
У меня получилось вытащить текст из xml файла.

Если не трудно, киньте пожалуйста кусок кода.

Спасибо!

Автор: Maksys 13.12.2007, 11:03
Дак тест-то это... типа ссылка на картинку ты ее хаваешь и даешь классу MovieClipLoader`у ее грузить... и все.. этот класс то знать должен... без него картинку не загрузишь.. 

Автор: StachelDraht 14.12.2007, 10:37
Блин, не понимаю все равно.
Код

MovieClipLoader.loadClip (foto1.jpg, picture);

че он не грузит то?
Код

loadMovie ("foto1.jpg", "picture");

вот так все нормально, но мне вместо адреса картинки надо вставить переменную которая в себе несет адрес, это тоже не получается.
picture это текстовое динамическое поле

Автор: Maksys 14.12.2007, 12:06
picture  это вообще-то мувиклип.. так веть..?

Добавлено через 34 секунды
ДАВАЙ ВЕСЬ КОД... smile

Автор: StachelDraht 14.12.2007, 12:21
Код

function loadXML (loaded) {
    if (loaded) {

        
var picture = _root.picture = this.firstChild.childNodes[0].childNodes[0].firstChild.nodeValue;
var link = _root.link = this.firstChild.childNodes[0].childNodes[1].firstChild.nodeValue;


//picture_txt.htmlText = picture;
//link_txt.htmlText = link;
    } else {
        trace("file not loaded!");
        
    }
}
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML; 
xmlData.load("data.xml");


loadMovie ("foto1.jpg", "picture_txt");
loadMovie ("foto2.jpg", "link_txt");
//MovieClipLoader.loadClip("foto1.jpg", picture_txt);

 
вот!
picture это переменная объявленая там в начале, в ней должен быть урл картинки.
на рабочем поле создано два текстовых поля picture_txt и link_txt но это собсно неважно

А задумка то заключается в том, чтобы из xml файла брать урл картинок и эти же картинки циклично прокручивать. Тобишь потом это все в массив надо запихнуть, как я понимаю.

Добавлено через 3 минуты и 40 секунд
я хочу что бы вот здесь
Код

loadMovie ("foto1.jpg", "picture_txt");

вместо foto1.jpg была переменная picture 
это вобще логично и возможно? Или это бред?

Автор: StachelDraht 14.12.2007, 15:03
Все спасибо, на данном проблему решил.

Автор: lesha11 16.12.2007, 12:16
Не знаком с Флеш, но нужно решить схожую задачу...
Можешь пожелиться исходником?
По вожможности объяснив что к чему.

Автор: StachelDraht 17.12.2007, 10:06
lesha11, 
все что написано на данный момент выложено в предыдущем посте.
Код + 2 текстовых поля
Пока нифига не работает.

По сути осталось то мелочь.

Автор: MPie 20.12.2007, 12:29
LoadMovie - это, вообще-то, метод объектов MovieClip:

public loadMovie(url:String, [method:String]) : Void

Я бы сделал примерно так: 

Код

var an_url = "picture_url.jpg"; //or read it from XML if you like

var picture_mc:MovieClip  = _root.createEmptyMovieClip("mc_picture", _root.getNextHighestDepth() );
picture_mc.loadMovie( an_url )
...



А вообще, смотрите справочную систему. Там как раз такой пример и приведен.

Автор: filini 3.1.2008, 18:32
Вот есть такой xml файл

Код

<modeli>
    <name>Имя</name>
    <age>Взраст</age>
    <images>
        <pic>foto/1.jpg</pic>
        <pic>foto/2.jpg</pic>
        <pic>foto/3.jpg</pic>
        <pic>foto/4.jpg</pic>
</image>
</modeli>



Как мне передать содержимое тега pic в какую нибудь переменную?..
а то я запутался с иерархиями. помогите)

Автор: filini 4.1.2008, 00:58
Сам разобрался=)

Автор: filini 6.1.2008, 00:58
Пардон))

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)