This is a really simple example illustrating gestures in ANDROID.
You Know that everything you do with your hand inside the phone is a gesture like SingleTap, doubleTap etc.
Here is a quick illustration of this.
For this the activity must implement OnGestureListener. The GestureDetector detects the gestures.
Let’s look at the example.
package pack.GestureSampleThree; import android.app.Activity; import android.graphics.Color; import android.os.Bundle; import android.view.GestureDetector; import android.view.MotionEvent; import android.view.GestureDetector.OnGestureListener; import android.widget.LinearLayout; import android.widget.TextView; public class GestureSampleThreeExample extends Activity implements OnGestureListener { private LinearLayout main; private TextView viewA; private GestureDetector gestureScanner; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); gestureScanner = new GestureDetector(this); main = new LinearLayout(this); main.setBackgroundColor(Color.GRAY); main.setLayoutParams(new LinearLayout.LayoutParams(320,480)); viewA = new TextView(this); viewA.setBackgroundColor(Color.YELLOW); viewA.setTextColor(Color.BLACK); viewA.setTextSize(16); viewA.setLayoutParams(new LinearLayout.LayoutParams(320,80)); main.addView(viewA); setContentView(main); } @Override public boolean onTouchEvent(MotionEvent me) { return gestureScanner.onTouchEvent(me); } public boolean onDown(MotionEvent e) { viewA.setText("-" + "DOWN" + "-"); return true; } public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { viewA.setText("-" + "FLING" + "-"); return true; } public void onLongPress(MotionEvent e) { viewA.setText("-" + "LONG PRESS" + "-"); } public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { viewA.setText("-" + "SCROLL" + "-"); return true; } public void onShowPress(MotionEvent e) { viewA.setText("-" + "SHOW PRESS" + "-"); } public boolean onSingleTapUp(MotionEvent e) { viewA.setText("-" + "SINGLE TAP UP" + "-"); return true; } }
The layout file main.xml for the above code is
<?xml version="1.0" encoding="utf-8"?> <linearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <textView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> </linearLayout>
The manifest file.
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="pack.GestureSampleThree" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".GestureSampleThreeExample" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
A complete example for making your own gesture application in ANDROID is explained in this tutorial
Pingback: Finger swipe in Android application - Programmers Goodies