diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index a3dcd43..19a0991 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -117,5 +117,6 @@
+
\ No newline at end of file
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 7f67937..1b50cb9 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -133,4 +133,5 @@
CityRadar
+ Using SurfaceGesture
diff --git a/src/org/andengine/examples/AugmentedRealityHorizonExample.java b/src/org/andengine/examples/AugmentedRealityHorizonExample.java
index 07ae381..fe39d7c 100644
--- a/src/org/andengine/examples/AugmentedRealityHorizonExample.java
+++ b/src/org/andengine/examples/AugmentedRealityHorizonExample.java
@@ -71,6 +71,7 @@
//
// @Override
// public void onGameCreated() {
+// super.onGameCreated();
// this.enableOrientationSensor(this);
// }
//
diff --git a/src/org/andengine/examples/BitmapFontExample.java b/src/org/andengine/examples/BitmapFontExample.java
index ee7399e..4c6a338 100644
--- a/src/org/andengine/examples/BitmapFontExample.java
+++ b/src/org/andengine/examples/BitmapFontExample.java
@@ -73,7 +73,7 @@ public Scene onCreateScene() {
}
public void onGameCreated() {
-
+ super.onGameCreated();
}
// ===========================================================
diff --git a/src/org/andengine/examples/DigitalOnScreenControlExample.java b/src/org/andengine/examples/DigitalOnScreenControlExample.java
index 958c53b..11fe5b2 100644
--- a/src/org/andengine/examples/DigitalOnScreenControlExample.java
+++ b/src/org/andengine/examples/DigitalOnScreenControlExample.java
@@ -122,6 +122,7 @@ public void onControlChange(final BaseOnScreenControl pBaseOnScreenControl, fina
@Override
public void onGameCreated() {
+ super.onGameCreated();
this.showDialog(DIALOG_ALLOWDIAGONAL_ID);
}
diff --git a/src/org/andengine/examples/EaseFunctionExample.java b/src/org/andengine/examples/EaseFunctionExample.java
index 159335d..9c00ed6 100644
--- a/src/org/andengine/examples/EaseFunctionExample.java
+++ b/src/org/andengine/examples/EaseFunctionExample.java
@@ -249,6 +249,7 @@ public boolean onAreaTouched(final TouchEvent pSceneTouchEvent, final float pTou
@Override
public void onGameCreated() {
+ super.onGameCreated();
this.reanimate();
}
diff --git a/src/org/andengine/examples/PhysicsMouseJointExample.java b/src/org/andengine/examples/PhysicsMouseJointExample.java
index b2004db..9fbc5e2 100644
--- a/src/org/andengine/examples/PhysicsMouseJointExample.java
+++ b/src/org/andengine/examples/PhysicsMouseJointExample.java
@@ -139,6 +139,7 @@ public Scene onCreateScene() {
@Override
public void onGameCreated() {
+ super.onGameCreated();
this.mEngine.enableVibrator(this);
}
diff --git a/src/org/andengine/examples/SurfaceGestureExample.java b/src/org/andengine/examples/SurfaceGestureExample.java
new file mode 100644
index 0000000..a30cb7c
--- /dev/null
+++ b/src/org/andengine/examples/SurfaceGestureExample.java
@@ -0,0 +1,160 @@
+package org.andengine.examples;
+
+import org.andengine.engine.camera.Camera;
+import org.andengine.engine.handler.timer.ITimerCallback;
+import org.andengine.engine.handler.timer.TimerHandler;
+import org.andengine.engine.options.EngineOptions;
+import org.andengine.engine.options.EngineOptions.ScreenOrientation;
+import org.andengine.engine.options.resolutionpolicy.RatioResolutionPolicy;
+import org.andengine.entity.modifier.ScaleModifier;
+import org.andengine.entity.scene.Scene;
+import org.andengine.entity.scene.background.Background;
+import org.andengine.entity.text.Text;
+import org.andengine.entity.text.Text.TextOptions;
+import org.andengine.entity.util.FPSLogger;
+import org.andengine.input.touch.detector.SurfaceGestureDetector.SurfaceGestureDetectorAdapter;
+import org.andengine.opengl.font.Font;
+import org.andengine.opengl.font.FontFactory;
+import org.andengine.opengl.texture.TextureOptions;
+import org.andengine.ui.activity.SimpleBaseGameActivity;
+import org.andengine.util.HorizontalAlign;
+
+import android.graphics.Color;
+import android.os.Bundle;
+import android.widget.Toast;
+
+/**
+ * (c) 2012 Ryan Antiquiera
+ *
+ * @author Ryan Antiquiera
+ * @since 15:44:58 - 03.14.2012
+ */
+public class SurfaceGestureExample extends SimpleBaseGameActivity {
+ // ===========================================================
+ // Constants
+ // ===========================================================
+
+ private static final int CAMERA_WIDTH = 720;
+ private static final int CAMERA_HEIGHT = 480;
+
+ // ===========================================================
+ // Fields
+ // ===========================================================
+
+ private SurfaceGestureDetectorAdapter mSGDA;
+ private Font mFont;
+ private Scene mScene;
+
+ // ===========================================================
+ // Constructors
+ // ===========================================================
+
+ // ===========================================================
+ // Getter & Setter
+ // ===========================================================
+
+ // ===========================================================
+ // Methods for/from SuperClass/Interfaces
+ // ===========================================================
+
+ @Override
+ protected void onCreate(final Bundle pSavedInstanceState) {
+ super.onCreate(pSavedInstanceState);
+
+ this.mSGDA = new SurfaceGestureDetectorAdapter(){
+
+ @Override
+ protected boolean onSingleTap() {
+ onSurfaceGesture("Tap");
+ return false;
+ }
+
+ @Override
+ protected boolean onSwipeDown() {
+ onSurfaceGesture("Swipe\nDown");
+ return false;
+ }
+
+ @Override
+ protected boolean onSwipeLeft() {
+ onSurfaceGesture("Swipe\nLeft");
+ return false;
+ }
+
+ @Override
+ protected boolean onSwipeRight() {
+ onSurfaceGesture("Swipe\nRight");
+ return false;
+ }
+
+ @Override
+ protected boolean onSwipeUp() {
+ onSurfaceGesture("Swipe\nUp");
+ return false;
+ }
+
+ @Override
+ protected boolean onDoubleTap() {
+ onSurfaceGesture("Double\nTap");
+ return false;
+ }
+
+ };
+
+ this.mSGDA.setEnabled(true);
+ }
+
+ @Override
+ protected void onCreateResources() {
+ /* Load the font we are going to use. */
+ FontFactory.setAssetBasePath("font/");
+ this.mFont = FontFactory.createFromAsset(this.getFontManager(), this.getTextureManager(), 512, 512, TextureOptions.BILINEAR, this.getAssets(), "Plok.ttf", 32, true, Color.WHITE);
+ this.mFont.load();
+ }
+
+ @Override
+ public EngineOptions onCreateEngineOptions() {
+ Toast.makeText(this, "Try tap, double tap, and swipe!", Toast.LENGTH_LONG).show();
+
+ final Camera camera = new Camera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT);
+
+ return new EngineOptions(true, ScreenOrientation.LANDSCAPE_FIXED, new RatioResolutionPolicy(CAMERA_WIDTH, CAMERA_HEIGHT), camera);
+ }
+
+ @Override
+ protected Scene onCreateScene() {
+ this.mEngine.registerUpdateHandler(new FPSLogger());
+
+ this.mScene = new Scene();
+ this.mScene.setBackground(new Background(0.09804f, 0.6274f, 0.8784f));
+
+ this.mScene.setOnSceneTouchListener(this.mSGDA);
+
+ return this.mScene;
+ }
+
+ // ===========================================================
+ // Methods
+ // ===========================================================
+
+ void onSurfaceGesture(CharSequence text) {
+ final Text gestureText = new Text(0, 0, this.mFont, text, new TextOptions(HorizontalAlign.CENTER), this.getVertexBufferObjectManager());
+ gestureText.setPosition((CAMERA_WIDTH - gestureText.getWidth()) * 0.5f, (CAMERA_HEIGHT - gestureText.getHeight()) * 0.5f);
+ gestureText.setScale(0.0f);
+ gestureText.registerEntityModifier(new ScaleModifier(0.5f, 0.0f, 2f));
+ this.mScene.attachChild(gestureText);
+
+ this.mScene.registerUpdateHandler(new TimerHandler(1.5f, new ITimerCallback() {
+ @Override
+ public void onTimePassed(final TimerHandler pTimerHandler) {
+ SurfaceGestureExample.this.mScene.unregisterUpdateHandler(pTimerHandler);
+ SurfaceGestureExample.this.mScene.detachChild(gestureText);
+ }
+ }));
+ }
+
+ // ===========================================================
+ // Inner and Anonymous Classes
+ // ===========================================================
+
+}
diff --git a/src/org/andengine/examples/app/cityradar/CityRadarActivity.java b/src/org/andengine/examples/app/cityradar/CityRadarActivity.java
index 847e507..de964cf 100644
--- a/src/org/andengine/examples/app/cityradar/CityRadarActivity.java
+++ b/src/org/andengine/examples/app/cityradar/CityRadarActivity.java
@@ -216,6 +216,7 @@ private void initBackground(final IEntity pEntity) {
@Override
public void onGameCreated() {
+ super.onGameCreated();
this.refreshCitySprites();
}
@@ -376,4 +377,4 @@ public static double calculateBearing(final double pLatitude1, final double pLon
// Inner and Anonymous Classes
// ===========================================================
}
-}
\ No newline at end of file
+}
diff --git a/src/org/andengine/examples/benchmark/BaseBenchmark.java b/src/org/andengine/examples/benchmark/BaseBenchmark.java
index 52ea249..42979db 100644
--- a/src/org/andengine/examples/benchmark/BaseBenchmark.java
+++ b/src/org/andengine/examples/benchmark/BaseBenchmark.java
@@ -100,6 +100,7 @@ public void run() {
@Override
public void onGameCreated() {
+ super.onGameCreated();
this.mEngine.registerUpdateHandler(new TimerHandler(this.getBenchmarkStartOffset(), new ITimerCallback() {
@Override
public void onTimePassed(final TimerHandler pTimerHandler) {
diff --git a/src/org/andengine/examples/game/pong/PongGameActivity.java b/src/org/andengine/examples/game/pong/PongGameActivity.java
index ac4c908..7e7137e 100644
--- a/src/org/andengine/examples/game/pong/PongGameActivity.java
+++ b/src/org/andengine/examples/game/pong/PongGameActivity.java
@@ -196,7 +196,7 @@ public void reset() {}
@Override
public void onGameCreated() {
-
+ super.onGameCreated();
}
// ===========================================================
diff --git a/src/org/andengine/examples/game/racer/RacerGameActivity.java b/src/org/andengine/examples/game/racer/RacerGameActivity.java
index 83763c3..1e38183 100644
--- a/src/org/andengine/examples/game/racer/RacerGameActivity.java
+++ b/src/org/andengine/examples/game/racer/RacerGameActivity.java
@@ -145,7 +145,7 @@ public Scene onCreateScene() {
@Override
public void onGameCreated() {
-
+ super.onGameCreated();
}
// ===========================================================
diff --git a/src/org/andengine/examples/game/snake/SnakeGameActivity.java b/src/org/andengine/examples/game/snake/SnakeGameActivity.java
index 550ed76..ed843d9 100644
--- a/src/org/andengine/examples/game/snake/SnakeGameActivity.java
+++ b/src/org/andengine/examples/game/snake/SnakeGameActivity.java
@@ -251,7 +251,7 @@ public void onTimePassed(final TimerHandler pTimerHandler) {
@Override
public void onGameCreated() {
-
+ super.onGameCreated();
}
// ===========================================================
diff --git a/src/org/andengine/examples/launcher/Example.java b/src/org/andengine/examples/launcher/Example.java
index 26a4b20..9c74f91 100644
--- a/src/org/andengine/examples/launcher/Example.java
+++ b/src/org/andengine/examples/launcher/Example.java
@@ -61,6 +61,7 @@
import org.andengine.examples.SpriteRemoveExample;
import org.andengine.examples.StrokeFontExample;
import org.andengine.examples.SubMenuExample;
+import org.andengine.examples.SurfaceGestureExample;
import org.andengine.examples.TMXTiledMapExample;
import org.andengine.examples.TextBreakExample;
import org.andengine.examples.TextExample;
@@ -159,6 +160,7 @@ enum Example {
SPRITEREMOVE(SpriteRemoveExample.class, R.string.example_spriteremove),
STROKEFONT(StrokeFontExample.class, R.string.example_strokefont),
SUBMENU(SubMenuExample.class, R.string.example_submenu),
+ SURFACEGESTURE(SurfaceGestureExample.class, R.string.example_surfacegesture),
SVGTEXTUREREGION(SVGTextureRegionExample.class, R.string.example_svgtextureregion),
TEXT(TextExample.class, R.string.example_text),
TEXTBREAK(TextBreakExample.class, R.string.example_textbreak),
diff --git a/src/org/andengine/examples/launcher/ExampleGroup.java b/src/org/andengine/examples/launcher/ExampleGroup.java
index 2e3b0b1..8a83cef 100644
--- a/src/org/andengine/examples/launcher/ExampleGroup.java
+++ b/src/org/andengine/examples/launcher/ExampleGroup.java
@@ -20,7 +20,7 @@ public enum ExampleGroup {
MODIFIER_AND_ANIMATION(R.string.examplegroup_modifier_and_animation,
Example.MOVINGBALL, Example.ENTITYMODIFIER, Example.ENTITYMODIFIERIRREGULAR, Example.PATHMODIFIER, Example.ANIMATEDSPRITES, Example.EASEFUNCTION, Example.ROTATION3D ),
TOUCH(R.string.examplegroup_touch,
- Example.TOUCHDRAG, Example.MULTITOUCH, Example.ANALOGONSCREENCONTROL, Example.DIGITALONSCREENCONTROL, Example.ANALOGONSCREENCONTROLS, Example.COORDINATECONVERSION, Example.PINCHZOOM),
+ Example.TOUCHDRAG, Example.MULTITOUCH, Example.ANALOGONSCREENCONTROL, Example.DIGITALONSCREENCONTROL, Example.ANALOGONSCREENCONTROLS, Example.COORDINATECONVERSION, Example.PINCHZOOM, Example.SURFACEGESTURE),
PARTICLESYSTEM(R.string.examplegroup_particlesystems,
Example.PARTICLESYSTEMSIMPLE, Example.PARTICLESYSTEMCOOL, Example.PARTICLESYSTEMNEXUS),
MULTIPLAYER(R.string.examplegroup_multiplayer,