| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Sep 2009
Beiträge: 24
| Letztes Schlüsselbild mit-animieren
Hallo Leute, falls es in dieser Richtung schon mal eine Frage und Antwort gab, tut es mir Leid! Wusste nicht nach was ich suchen kann. Es ist so, dass ich in AS 3 per: Code: var myTween:Tween = new Tween(slides_mc, "x", Regular.easeInOut, -512, 512, 0.5, true); Code: var myTween:Tween = new Tween(slides_mc, "x", Regular.easeInOut, 1536, 512, 0.5, true); Händisch würde das ganze ja gehen, wenn ich neben jeden Schlüsselbild, das alte auch noch ran setzte. Nur hätte ich das ganze eben gerne automatisch per Code, oder einer Art Objekt Instanz die sich aktualisiert, sobald ich den Content ändere. Wisst ihr was ich meine und habt ihr eine Idee? Grüße jb_ |
| | |
| | #2 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 17.273
| nein mit dem tween wird die x-eigenschaft von slides_mc verändert. was meinst du in diesem zusammenhang mit Schlüsselbild ? (ein Schlüsselbild ist ein key in der zeitleiste) "..oder einer Art Objekt Instanz die sich aktualisiert, sobald ich den Content ändere.." ??? soll das ganze eine bildershow geben? und die bilder sollen waagrecht durchgescrollt werden?
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de |
| | |
| | #4 (permalink) |
| Flash-Designer Registriert seit: May 2006 Ort: Wiesbaden
Beiträge: 7.040
| Ehrlich gesagt: nein. Du hast den Code zu zwei Tweenings gepostet, die die x-Position eines slider_mc animieren und sprichst die ganze Zeit von irgendwelchen Schlüsselbildern, die Du switchen willst Irgendwie fehlt mir da der Zusammenhang...
P.S.: Ich tippe einfach zulangsam
__________________ 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 (04-03-2012 um 16:10 Uhr) |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Sep 2009
Beiträge: 24
|
Ja habe mich schlecht ausgedrückt... Hocke heute seit 2 Jahren mal wieder vor Flash, und tue mich gerade noch etwas schwer mit der Terminologie. Das Ganz soll eine Vorlage für Präsentationen werden. Und ja vom Prinzip her wie eine Bilder Slidshow. Hätte mir dafür schon gerne die einzelnen Seiten auf verschiedene Frames, innerhalb eines Movieclips, angelegt. Der Content wird später eingebettet und liegt nicht extern. Hätte gerne so einen ähnlichen Effekt wie der Adobe Folio Viewer hat, beim umblättern. Denke die IPhones haben das auch. Die Struktur schaut so aus: Unterster Layer: BG 2. Layer: Folien (Movieclip), in dem die Seiten rein sollen 3. Layer: Script Ich hänge einfach mal die Datei ran. Geändert von jb_alvarado (04-03-2012 um 16:22 Uhr) |
| | |
| | #6 (permalink) | |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 17.273
| Zitat:
mach alles in einem einzigen frame, keine zeitleiste. erstelle ein mc == ein container für text, bild, clip, etc. diesen mc via programm rein und raus bewegen usw. meinetwegen auch mehrere dieser mc's. die können kann zeitgleich rein und raus und übereinander und purzelbäume und was auch immer machen. - jedenfalls weg von der zeitleiste! - eine aufgabe/klasse ist der container: mit inhalten füllen - eine andere aufgabe ist die präsentation: inhalt durch z.b. reinschieben anzeigen - die 3. aufgabe ist eine steuerung, mit der man vor und zurück blättern kann da fällt mir ein, es gibt doch solche page-blätter dinger. man muss das rad nicht neu erfinden. google mal nach: AS3 pageflip
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de Geändert von hgseib (04-03-2012 um 16:29 Uhr) | |
| | |
| | #7 (permalink) | |
| Neuer User Registriert seit: Sep 2009
Beiträge: 24
| Zitat:
Momentan kann ich mich mit dem Gedanken noch nicht anfreunden alles auf einen Frame zu packen, scheint mir für das Layouten etwas unpraktisch zu sein. Ansonsten klingt es schon einleuchtend. Sehe das aber schon richtig, dass ich dann bei 20 Seiten, a 1024px, dann eine Arbeitsfläche von 20*1024 habe? Dabei muss ich mich dann leider auch in der Scrollrichtung festlegen, also entweder von Oben nach Unten, oder von Links nach Rechts. Ansonsten danke ich Dir erst mal für die Antwort! | |
| | |
| | #8 (permalink) | |||
| Keine Panik Registriert seit: Apr 2010 Ort: Düsseldorf (im ernst)
Beiträge: 2.277
| Zitat:
Zitat:
Zitat:
Wieso? - du kannst leichter Ein-, aus- und Überblend-Effekte machen - Actionscript ist Frameübergreifend => Wenn du auf mehreren Frames die selben Variablen benutzt, kommt es schnell zu kollisionen - es ist leichter Reihenfolgen zu ändern, oder noch was einzuschieben, als wenn du anfangen musst, die Frames zu verschieben - letzlich dient das ganze mehr der Übersicht, als für sonst etwas. Es geht darum alles in kleine, überschaubare und ggf austauschbare Einheiten zu zerlegen und zusammenzufassen. Für Aufgaben und Datenstrukturen nimmt man Klassen, fürs Visuelle Movieclips (besser Sprites) Das war jetzt nicht (nur) auf dein konkretes Problem bezogen, sondern eher als allgemeiner Rat zum Aufbau, und Herangehensweise an das ganze. | |||
| | |
| | #9 (permalink) |
| Neuer User Registriert seit: Sep 2009
Beiträge: 24
|
Ah ok, jetzt bin ich im Bilde! Ich danke dir für die Erklärung! Habe jetzt erst mal einige Anhaltspunkte, wo ich mich rein lesen kann. Edit: Ja fein, geht ja einfacher als ich dachte .
Geändert von jb_alvarado (04-03-2012 um 19:01 Uhr) |
| | |
| | #10 (permalink) |
| Neuer User Registriert seit: Sep 2009
Beiträge: 24
|
Ich muss jetzt hier doch noch mal nachfragen. Ich würde das ganze jetzt gerne mit Transitions lösen, aber leider bekomme ich nur die ersten beiden Folien so hin, aber der 3. Greift der Code nicht mehr. Code: function fl_nextSlide():void
{
if( slides_mc1.x == 512 )
{
slides_mc2.x = 512;
TransitionManager.start(slides_mc1,{type:Fly, direction:Transition.OUT, duration:0.5, easing:Strong.easeInOut, startPoint:6});
TransitionManager.start(slides_mc2,{type:Fly, direction:Transition.IN, duration:0.5, easing:Strong.easeInOut, startPoint:4});
}
else if ( slides_mc2.x == 512 )
{
slides_mc3.x = 512;
TransitionManager.start(slides_mc2,{type:Fly, direction:Transition.OUT, duration:0.5, easing:Strong.easeInOut, startPoint:6});
TransitionManager.start(slides_mc3,{type:Fly, direction:Transition.IN, duration:0.5, easing:Strong.easeInOut, startPoint:4});
}
} Könnt ihr mir hier noch mal weiterhelfen? |
| | |
| | #11 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 17.273
|
eine feste definition in einer funktion ist vielleicht ungeschickt. übergebe slides_mc1..3 als parameter. if( slides_mc1.x == 512 ) solche tests sind mutig. besser z.b if( slides_mc1.x => 512 ) weil wenn der wert nicht exakt 512 ist, sondern z.b. 511.99999999999999999 dann ist der test negativ was meinst du mit Folien? flash kennt den begriff Folien, aber bestimmt in einem anderen zusammenhang. "..aber der 3. Greift der Code nicht .." was meinst du damit? bei deinem programm if( slides_mc1.x == 512 ) { } else if ( slides_mc2.x == 512 ) { kann immer nur eine variante gültig sein oder keine von beiden.
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de |
| | |
| | #12 (permalink) |
| Neuer User Registriert seit: Sep 2009
Beiträge: 24
|
Edit, habe es jetzt anders gemacht und es läuft erst mal. Code: var arrSlides:Array = new Array(slides_mc1, slides_mc2, slides_mc3);
for (var i=0; i<arrSlides.length; i++)
{
arrSlides[i].x = 512;
arrSlides[i].y = 320;
}
var index:int = 0;
var tMgr:TransitionManager;
addChild(arrSlides[index]);
// EVENTS
stage.addEventListener(KeyboardEvent.KEY_DOWN, fl_changeSlideKeyboard);
function fl_changeSlideKeyboard(evt:KeyboardEvent):void
{
if(evt.keyCode == 37 || evt.keyCode == 38) // LEFT
{
fl_prevSlide();
}
else if (evt.keyCode == 39 || evt.keyCode == 32 || evt.keyCode == 40) // RIGHT OR SPACE
{
fl_nextSlide();
}
}
// END EVENTS
// FUNCTIONS AND LOGIC
function fl_nextSlide():void
{
tMgr = new TransitionManager(arrSlides[index]);
tMgr.startTransition({type:Fly, direction:Transition.OUT, duration:0.5, easing:Strong.easeInOut, startPoint:6});
//removeChild(arrSlides[index]);
index++;
if (index == arrSlides.length)
{
index = 0;
}
tMgr = new TransitionManager(arrSlides[index]);
addChild(arrSlides[index]);
tMgr.startTransition({type:Fly, direction:Transition.IN, duration:0.5, easing:Strong.easeInOut, startPoint:4});
}
function fl_prevSlide():void
{
tMgr = new TransitionManager(arrSlides[index]);
tMgr.startTransition({type:Fly, direction:Transition.OUT, duration:0.5, easing:Strong.easeInOut, startPoint:4});
//removeChild(arrSlides[index]);
index--;
if (index == arrSlides.length)
{
index = 2;
}
tMgr = new TransitionManager(arrSlides[index]);
addChild(arrSlides[index]);
tMgr.startTransition({type:Fly, direction:Transition.IN, duration:0.5, easing:Strong.easeInOut, startPoint:6});
}
slides_mc1.gotoAndStop(1);
stage.scaleMode = StageScaleMode.SHOW_ALL;
// END FUNCTIONS AND LOGIC
stop(); Geändert von jb_alvarado (05-03-2012 um 17:15 Uhr) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| MC- letztes frame | nemoson | Flash MX | 3 | 10-05-2005 09:39 |
| flash mx schlüsselbild vor 1. Schlüsselbild setzen | Klaus.Buck | Flash 4 und Flash 5 | 3 | 12-04-2004 09:20 |
| .swf als letztes laden! | chickendeath | HTML und CSS | 3 | 23-04-2003 13:51 |
| ein letztes mal PRINT (); | Duckster | ActionScript 1 | 4 | 18-02-2002 16:43 |
| goto letztes bild | BlaX | Flash 4 und Flash 5 | 2 | 29-08-2001 10:40 |