Zurück   Flashforum > Flash > Flash Einsteiger

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 19-05-2011, 07:28   #1 (permalink)
Neuer User
 
Registriert seit: May 2011
Beiträge: 13
Bilder aus xml-Datei laden

Hallo erstmal
Ich bin lucerne, neu hier im Forum, und habe auch bereits die erste Frage.

Ich bin im ersten Lehrjahr als Mediamatiker und arbeite häufig an Flash-Projekten.
Die Aufgabe ist es ein Projekt zu erstellen indem man:

jeweils das Bild weiter klicken (es folgt immer ein nächstes) kann und aus- oder abwählen kann. Es sind 1000e von Bilder in einer xml-Datei (über <Pics pic="1" pic="2"></Pics>) vorhanden. Diese müssten eingebunden werden und dann so verarbeitet, dass das erste erscheint, und wenn man weiter klickt, das nächste auftaucht.
Ich hoffe ihr kommt ein wenig drauss, sonst nachfragen.

Ich habe keine idee, wie ich das Ganze angehen soll und wie ich es realisieren könnte. Ich habe noch keine breite Erfahrung in AS.

Ich hoffe auf Antworten, die mir weiter helfen
Danke und Gruss
lucerne ist offline   Mit Zitat antworten
Alt 19-05-2011, 09:03   #2 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.164
Willkommen im FlashForum!

Dieses Theme wurde hier schon sehr oft besprochen. Mit den Stichworte "Gallery" und "XML" dürftest Du über die Suchfunktion etliche Beiträge finden.

Zwei Anmerkungen vorab:
  • Eine der ersten Entscheidungen sollte sein, in welcher ActionScript-Version Du arbeiten möchtest. AS1/2 und AS3 sind nänmlich nicht kompatibel und lassen sich später nicht so einfach in einander umwandeln.

  • Ich rate Dir dringend das XML anders aufzubauen.
    Code:
    <Pics pic="1" pic="2"></Pics>
    Weil in jedem Node jedes Attribut eigentlich nur einmal vorkommen darf, sollte das hier nichtmal XML-konform sein. Es ist auch generell keine gute Idee, gleichartige Informationen in mehrern Attributen desselben Nodes abzubilden.

    Ich würde es stattdessen ungefähr so aufbauen:
    Code:
    <data>
       <pic id="1" src="bildUrl01.jpg">Bildtitel 01</pic>
       <pic id="2" src="bildUrl02.jpg">Bildtitel 02</pic>
       <pic id="3" src="bildUrl03.jpg">Bildtitel 03</pic>
       <pic id="4" src="bildUrl04.jpg">Bildtitel 04</pic>
       <pic id="5" src="bildUrl05.jpg">Bildtitel 05</pic>
    </data>
__________________
Viele Grüße // Martin

Martin Kraft // Interaktionsdesign

Hilfreiche Websites:
// Hilfe zur Adobe Flash Plattform
// ActionScript 2 Referenz
// ActionScript 3 Referenz
// ActionScript 3 Arbeitshandbuch
// weitere Flash Ressourcen

Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da!
Martin Kraft ist offline   Mit Zitat antworten
Alt 19-05-2011, 09:34   #3 (permalink)
Neuer User
 
Registriert seit: May 2011
Beiträge: 13
Danke für die Antwort!
Ich arbeite in AS3.

Die xml-Datei besteht schon, also sie ist nicht von mir geschrieben. Um das Ganze umzu schreiben würde das Tage dauern, es sind so viele Daten (ca. 12000 Zeilen).

Die Bilder wurden/werden aber auch in einem anderem Flash-Projekt bereits angesprochen, also müsste es doch irgendwie gehen??

gruss
lucerne ist offline   Mit Zitat antworten
Alt 19-05-2011, 09:40   #4 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.164
Zitat:
Zitat von lucerne Beitrag anzeigen
Die xml-Datei besteht schon, also sie ist nicht von mir geschrieben. Um das Ganze umzu schreiben würde das Tage dauern, es sind so viele Daten (ca. 12000 Zeilen).
Aber die sieht doch garantiert nicht so aus?! Zeig einfach mal die Datei, oder wenigstens einen Teil von ihr!
__________________
Viele Grüße // Martin

Martin Kraft // Interaktionsdesign

Hilfreiche Websites:
// Hilfe zur Adobe Flash Plattform
// ActionScript 2 Referenz
// ActionScript 3 Referenz
// ActionScript 3 Arbeitshandbuch
// weitere Flash Ressourcen

Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da!
Martin Kraft ist offline   Mit Zitat antworten
Alt 19-05-2011, 09:57   #5 (permalink)
Neuer User
 
Registriert seit: May 2011
Beiträge: 13
Zitat:
Zitat von Martin Kraft Beitrag anzeigen
Aber die sieht doch garantiert nicht so aus?! Zeig einfach mal die Datei, oder wenigstens einen Teil von ihr!
so siehts aus.. es sind alles solche projekte:

HTML-Code:
<projekte>
	<Projekt1501 firma="AG" ort="Z." projekt="Neubau">
		
		<FirmenAdr><![CDATA[<b>......</b>]]></FirmenAdr>
		
		<Projektbeschrieb><![CDATA[<b>.......]]></Projektbeschrieb>

		<Kurzportrait><![CDATA[<b>.........]></Kurzportrait>
		
		<logo>....</logo>

		 <Pics pic1="...." pic2="..." pic3="......"></Pics>
		
		<BestPic>1</BestPic>
				
		<other_Projects>1|1501|1601</other_Projects>
				
	</Projekt1501>

[...]
</projekte>

Geändert von lucerne (19-05-2011 um 10:23 Uhr)
lucerne ist offline   Mit Zitat antworten
Alt 19-05-2011, 10:01   #6 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.164
Das sieht schonmal etwas besser aus, auch wenn ich das mit dem <Pics/>-Node nachwievor etwas unglücklich (weil unflexibel) gelöst finde...

Was ist denn <BestPic/>?
__________________
Viele Grüße // Martin

Martin Kraft // Interaktionsdesign

Hilfreiche Websites:
// Hilfe zur Adobe Flash Plattform
// ActionScript 2 Referenz
// ActionScript 3 Referenz
// ActionScript 3 Arbeitshandbuch
// weitere Flash Ressourcen

Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da!
Martin Kraft ist offline   Mit Zitat antworten
Alt 19-05-2011, 10:06   #7 (permalink)
Neuer User
 
Registriert seit: May 2011
Beiträge: 13
Zitat:
Zitat von Martin Kraft Beitrag anzeigen
Das sieht schonmal etwas besser aus, auch wenn ich das mit dem <Pics/>-Node nachwievor etwas unglücklich (weil unflexibel) gelöst finde...

Was ist denn <BestPic/>?
Ehrlich gesagt habe ich keine Ahnung für was das steht, da ich die xml Datei nicht geschrieben habe und auch nicht kenne. Doch das sollte doch keinen Einfluss haben oder?
lucerne ist offline   Mit Zitat antworten
Alt 19-05-2011, 10:13   #8 (permalink)
Neuer User
 
Benutzerbild von andrelehnert
 
Registriert seit: Oct 2007
Ort: Kölle
Beiträge: 1.231
Ich würde mal gaaaanz schnell die Original Daten aus Deinem xml-Auszug löschen... Das kann bösen Ärger mit dem Kunden Deines Kunden geben.

LG ANdré
__________________
Die Hoffnung stirbt zuletzt.
Aber sie stirbt.
andrelehnert ist offline   Mit Zitat antworten
Alt 19-05-2011, 10:24   #9 (permalink)
Neuer User
 
Registriert seit: May 2011
Beiträge: 13
Zitat:
Zitat von andrelehnert Beitrag anzeigen
Ich würde mal gaaaanz schnell die Original Daten aus Deinem xml-Auszug löschen... Das kann bösen Ärger mit dem Kunden Deines Kunden geben.

LG ANdré
naja.. ist auch online geschaltet das ganze.. aber habs jetzt mal geändert..
lucerne ist offline   Mit Zitat antworten
Alt 19-05-2011, 10:26   #10 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.164
Zitat:
Zitat von lucerne Beitrag anzeigen
Ehrlich gesagt habe ich keine Ahnung für was das steht, da ich die xml Datei nicht geschrieben habe und auch nicht kenne. Doch das sollte doch keinen Einfluss haben oder?
Muss nicht - für mich klingt dieses Node aber danach, als würde hier angegeben, welches Bild bevorzugt angezeigt werden sollen...
  • Wer oder was verarbeitet eigentlich den Rest der XML-Informationen?
  • Bezieht sich Deine Galerie nur auf die 3 Bilder eines Projekts?
  • Sind das immer 3? Oder lässt sich das beliebig fortführen: pic4="" pic5="" ...

Eine letzte Anmerkung zum XML:

Generel sollte Nodenamen (<Projekt1501...) oder Attributnamen (pic2="...) nicht durchnummerieren. Das erschwert nämlich die Verarbeitung des XMLs mit E4X und wiederspricht der Grundidee eines semantischen Aufbaus...

Wenn Du selbst keinen Einfluss auf den Aufbau dieses XMLs hast, solltest Du diese Information mal an den Verantwortlichen weitergeben.
__________________
Viele Grüße // Martin

Martin Kraft // Interaktionsdesign

Hilfreiche Websites:
// Hilfe zur Adobe Flash Plattform
// ActionScript 2 Referenz
// ActionScript 3 Referenz
// ActionScript 3 Arbeitshandbuch
// weitere Flash Ressourcen

Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da!

Geändert von Martin Kraft (19-05-2011 um 10:35 Uhr)
Martin Kraft ist offline   Mit Zitat antworten
Alt 19-05-2011, 10:40   #11 (permalink)
Neuer User
 
Registriert seit: May 2011
Beiträge: 13
Zitat:
Zitat von Martin Kraft Beitrag anzeigen
Muss nicht - für mich klingt dieses Node aber danach, als würde hier angegeben, welches Bild bevorzugt angezeigt werden sollen...
  • Wer oder was verarbeitet eigentlich den Rest der XML-Informationen?
  • Bezieht sich Deine Galerie nur auf die 3 Bilder eines Projekts?
  • Sind das immer 3? Oder lässt sich das beliebig fortführen: pic4="" pic5="" ...

Eine letzte Anmerkung zum XML:

Generel sollte Nodenamen (<Projekt1501...) oder Attributnamen (pic2="...) nicht durchnummerieren. Das erschwert nämlich die Verarbeitung des XMLs mit E4X und wiederspricht der Grundidee eines semantischen Aufbaus...

Wenn Du selbst keinen Einfluss auf den Aufbau dieses XMLs hast, solltest Du diese Information mal an den Verantwortlichen weitergeben.
Wer oder was verarbeitet eigentlich den Rest der XML-Informationen?
-- Wie meinst du das?

Es sind nicht immer 3 Bilder. Sie werden jedoch in jedem Projekt so weiter aufgeführt. (pic1, pic2, pic3....)

Wie gesagt auf das xml, habe ich keine Einwirkung, doch dies wurde so auch schon genutzt. Alle infos und Bilder wurden in ein AS integriert..
lucerne ist offline   Mit Zitat antworten
Alt 25-05-2011, 07:26   #12 (permalink)
Neuer User
 
Registriert seit: May 2011
Beiträge: 13
Hallo

Ich muss das Thema leider nochmals aufgreifen?
Kann mir jemand einen Link oder Code schicken oder auch nur Tipps?
Ich begreiffe es nicht, wie ich die Bilder reinladen kann (aus der xml datei) und sie durchklicken kann.

Bitte um Hilfe. Danke.
lucerne ist offline   Mit Zitat antworten
Alt 25-05-2011, 08:48   #13 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.164
Zitat:
Zitat von lucerne Beitrag anzeigen
Ich begreiffe es nicht, wie ich die Bilder reinladen kann (aus der xml datei)...
Dafür holst Du Dir erstmal die gewünschte URL per E4X aus dem XML...
PHP-Code:
var url:String xml.Projekt1501.Pics.@pic1
...und lädst diese dann ganz normal mit der Loader-Klasse.
PHP-Code:
import flash.display.DisplayObject;
import flash.display.Loader;
import flash.display.LoaderInfo;
import flash.events.Event;
import flash.net.URLRequest;

var 
loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETEhandleComplete);
loader.load( new URLRequest(url) );

function 
handleCompleteevent:Event ):void {
    var 
content:DisplayObject LoaderInfo(event.target).content;
    
    
// Die weitere Verarbeitung des Contents
    
addChildcontent );

Zitat:
Zitat von lucerne Beitrag anzeigen
...und sie durchklicken kann.
Dafür müsstest Dir entsprechende Buttons erstellen, die oben beschriebenen Prozesse auslösen.

Aber dieses Thema (XML-gesteuerte Bildergalerie) wurde hier im Forum schon gefühlte 1000 Mal besprochen. Benutz' einfach mal die Suchfunktion!
__________________
Viele Grüße // Martin

Martin Kraft // Interaktionsdesign

Hilfreiche Websites:
// Hilfe zur Adobe Flash Plattform
// ActionScript 2 Referenz
// ActionScript 3 Referenz
// ActionScript 3 Arbeitshandbuch
// weitere Flash Ressourcen

Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da!
Martin Kraft ist offline   Mit Zitat antworten
Alt 26-05-2011, 10:32   #14 (permalink)
Neuer User
 
Registriert seit: May 2011
Beiträge: 13
hallo mal wieder

ich habe jetzt mal das xml-file initialisiert nach einer anleitung im web..

PHP-Code:
// neues URLLoader-Objekt
var myLoader:URLLoader = new URLLoader();
// URL der XML-Datei
var myURL = new URLRequest("projekte.xml")
// URL laden
myLoader.load(myURL);
// Eventlistener: wenn URL geladen --> onLoadComplete-Funktion ausfuehren
myLoader.addEventListener(Event.COMPLETEonLoadComplete);

// neues XML-Objekt
var myXML:XML;


function 
onLoadComplete(e:Event):void {
// Kommentare in der XML Datei ignorieren
XML.ignoreComments true;        
// Leerzeichen ignorieren
XML.ignoreWhitespace true;
        
// XML-Objekt erstellen (auch myLoader.data statt evt.target.data möglich)
myXML = new XML(myLoader.data); 
        
trace("Das ist ein Test " myXML.projekte.Projekt1501.@projekt.text() );        
        

nun bekomm ich aber folgenden typerror:

TypeError: Error #1088: Das Markup im Dokument nach dem Stammelement muss logisch aufgebaut sein.

wie werd ich den los?

Gruss

ps. danke an Martin Kraft immer für die schnelle hilfe
lucerne ist offline   Mit Zitat antworten
Alt 26-05-2011, 10:40   #15 (permalink)
Neuer User
 
Benutzerbild von andrelehnert
 
Registriert seit: Oct 2007
Ort: Kölle
Beiträge: 1.231
Da hast Du wohl irgendeinen Fehler in der XML Struktur...
Poste mal einen Auszug aus dem aktuellen xml-File...

LG ANdré
__________________
Die Hoffnung stirbt zuletzt.
Aber sie stirbt.
andrelehnert ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
auswahl, bilder, einbinden, sortieren, xml

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
bilder dynamisch laden (txt datei) Tybalt Flash Einsteiger 12 12-07-2008 16:14
Bilder seriell aus XML-Datei laden intercorni Flash mit XML und Webservices 4 26-09-2005 09:08
bilder aus xml datei laden metleck Flash MX 2004 7 12-07-2005 20:12
Bilder laden mit XML Datei LeX@flash Flash MX 2004 1 07-03-2005 13:33
Bilder aus .txt-datei laden aklinkow ActionScript 1 13 20-09-2003 08:01


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:45 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele