D
DaFunsel
Guest
Hallo zusammen.
Ich bin mal wieder dabei ein wenig zu spielen.
Mein Ziel ist es, eine einfache Swipe Funktion zu schreiben. Im Netz habe ich ein Tutorial gefunden. Dort wird ein MC erstellt ("square_mc"), zudem folgendes Script:
Das funktioniert auf dem iPhone ganz gut. Das ist eine sehr einfache Anweisung. Dort wird nicht gesagt das es ein "smoother" Übergang zum nächsten Bild sein soll und das Ende nach links/rechts ist auch nicht definiert.
Ich habe noch ein anderes Tutorial gefunden, das funktioniert bei mir nicht richtig gut und ist für meine Verhältnisse nicht ausreichend erklärt und nachvollziehbar (kann es sein, das es nicht richtig funktioniert, weil er das in CS5.5 und ich in CS5 geschrieben hat?):
Dort ist der Übergang so wie ich ihn haben möchte (das Sliden).
Zudem ist dort Anfang und Ende definiert. Beim Testen hängt er sich manchmal auf und ich kann weder vor noch zurück. Das mit den " tiles.x -= 33;" verstehe ich auch nicht ganz. Es wird gesagt, das dies der Freiraum von Bild zur Bühne im MC ist. Ich habe mein Bild der Größe angepasst und die selben Werte genommen. Beim hin und her Sliden werden die Bilder nicht mittig dargestellt, eher alles verschoben (nur das erste Bild stimmt).
Wie macht man das denn, wenn man die Bilder als Vollbild haben möchte? Muss dann "tiles.x -= 0;"?
Was für mich und auch evtl. für andere interessant sein könnte, kann man diese Anweisungen vereinfacht zusammenfassen?
Ich bin wie schon oft geschrieben nicht wirklich fit in AS3. Eine Erklärung ist somit für mich sehr wichtig.
Ich würde mich über eine Antwort sehr freuen.
-->LG<--
Ich bin mal wieder dabei ein wenig zu spielen.
Mein Ziel ist es, eine einfache Swipe Funktion zu schreiben. Im Netz habe ich ein Tutorial gefunden. Dort wird ein MC erstellt ("square_mc"), zudem folgendes Script:
Code:
import flash.ui.Multitouch;
import flash.ui.MultitouchInputMode;
Multitouch.inputMode = MultitouchInputMode.GESTURE;
square_mc.addEventListener(TransformGestureEvent.GESTURE_SWIPE , onSwipe);
function onSwipe (e:TransformGestureEvent):void{
if (e.offsetX == 1) {
//User swiped towards right
square_mc.x += 320;
}
if (e.offsetX == -1) {
//User swiped towards left
square_mc.x -= 320;
}
}
Ich habe noch ein anderes Tutorial gefunden, das funktioniert bei mir nicht richtig gut und ist für meine Verhältnisse nicht ausreichend erklärt und nachvollziehbar (kann es sein, das es nicht richtig funktioniert, weil er das in CS5.5 und ich in CS5 geschrieben hat?):
Code:
package {
import flash.display.MovieClip;
import flash.ui.Multitouch;
import flash.ui.MultitouchInputMode;
import flash.events.TransformGestureEvent;
import flash.events.Event;
public class Swipe extends MovieClip {
private var currentTile:Number = 1;
private var totalTiles:Number = 4;
private var slideCounter:Number = 0;
public function Swipe() {
if(Multitouch.supportsGestureEvents)
{
init();
}else{
trace("No Gestures");
}
}
private function init():void
{
Multitouch.inputMode = MultitouchInputMode.GESTURE;
this.stage.addEventListener(TransformGestureEvent.GESTURE_SWIPE, handleSwipe);
}
private function handleSwipe(event:TransformGestureEvent):void
{
if(event.offsetX == 1)
{
if(currentTile > 1)
{
slideRight();
currentTile--;
}
} else if(event.offsetX == -1)
{
if(currentTile < totalTiles)
{
slideLeft();
currentTile++;
}
}
}
private function slideLeft():void
{
tiles.addEventListener("enterFrame", moveTilesLeft);
}
private function slideRight():void
{
tiles.addEventListener("enterFrame", moveTilesRight);
}
private function moveTilesLeft(event:Event):void
{
tiles.x -= 33;
slideCounter++;
if(slideCounter == 10)
{
tiles.removeEventListener("enterFrame", moveTilesLeft);
slideCounter = 0;
}
}
private function moveTilesRight(event:Event):void
{
tiles.x += 33;
slideCounter++;
if(slideCounter == 10)
{
tiles.removeEventListener("enterFrame", moveTilesRight);
slideCounter = 0;
}
}
}
}
Zudem ist dort Anfang und Ende definiert. Beim Testen hängt er sich manchmal auf und ich kann weder vor noch zurück. Das mit den " tiles.x -= 33;" verstehe ich auch nicht ganz. Es wird gesagt, das dies der Freiraum von Bild zur Bühne im MC ist. Ich habe mein Bild der Größe angepasst und die selben Werte genommen. Beim hin und her Sliden werden die Bilder nicht mittig dargestellt, eher alles verschoben (nur das erste Bild stimmt).
Wie macht man das denn, wenn man die Bilder als Vollbild haben möchte? Muss dann "tiles.x -= 0;"?
Was für mich und auch evtl. für andere interessant sein könnte, kann man diese Anweisungen vereinfacht zusammenfassen?
Ich bin wie schon oft geschrieben nicht wirklich fit in AS3. Eine Erklärung ist somit für mich sehr wichtig.
Ich würde mich über eine Antwort sehr freuen.
-->LG<--
Zuletzt bearbeitet von einem Moderator: