PDA

Просмотр полной версии : пользовательсие действия для подгружаемого


screamge
08.02.2007, 11:25
столкнулся с такой проблемой...у меня есть XML из которого я загружаю список....прохожусь циклом по нодам и заношу в динамическое текстовое поле нужный мне атрибут всех нодов.
Теперь а том что не получается...хочу сделать реакцию на пользовательское событие...т.е. если юзвер нажимает на элемент из списка...допустим происходил переход на нажный кадр.
Не прошу готовых решений...подскажите что искать...

KLieriK
08.02.2007, 11:47
ничего не понял. напишите более человеческим языком.

screamge
08.02.2007, 12:09
кудаж человечнее...нужно что б на клик по одному из элементов динамического списка (подгружаемого из XML) происходило действия...gotoAndPlay (), trace ()...вообщем не важно.

to KLierik только не советуйте перейти по ссылке в вашей подписе и почитать про класс XML и XMLNode:)

CorC
08.02.2007, 12:10
asfunction в тексте для перехода?

Tardos Mors
08.02.2007, 12:13
Либо для текстового поля разрешить ХТМЛ (list_txt.html = true) и каждую запись делать ссылой:

/*
15 - это номер кадра.
list_txt - имя текстового поля
*/
list_txt.htmlText = '<a href="asfunction:_root.gotoAndStop, 15">Текст ссылки</a>';

Либо данные загружать не в одно поле, а для каждой записи создать кнопку (ИМХО так удобнее)

screamge
08.02.2007, 12:20
to CorC ну типа того, в XML прописан кадр для каждого элемента списка и при нажатии во флеш на какой-нибудь элемент переход на нужный кадр (кадр как уже говорил прописан в XML)

to Tardos Mors уже разрешил но список большой если я для каждой записи буду прописывать в AS линк...вообщем не подойдёт, а втрой вариант точно не подходит...уже пробовал:)

CorC
08.02.2007, 12:31
создавай тогда программно в АС строку с asfunction
а потом перед тем как в текстфилд вставить текст
ты в него в нужное место впехивай то что сгенерил

screamge
08.02.2007, 12:45
ладно буду пробовать

screamge
08.02.2007, 15:36
всё нашёл нужную инфу

var myMP3:Sound = new Sound();
function playMP3(mp3:String) {
myMP3.loadSound(mp3, true);
myMP3.onLoad = function(success) {
if (!success) {
// code to handle errors here
}
};
}
this.createTextField("list_txt", this.getNextHighestDepth(), 0, 0, 200, 100);
list_txt.autoSize = true;
list_txt.html = true;
list_txt.multiline = true;
list_txt.htmlText = "<a href=\"asfunction:playMP3, track1.mp3\">Track 1</a><br>";
list_txt.htmlText += "<a href=\"asfunction:playMP3, track2.mp3\">Track 2</a><br>";



всем спасибо