TUTORIAL PEMBUATAN APLIKASI SEDERHANA TOUCH AND GESTURE PADA ANDROID Di dalam bahasan kali ini, terdapat tutorial pembuatan aplikasi sederhana touch and gesture pada android. Dalam touch and gesture ini saya membuat tutorial untuk melakukan zoom in zoom out pada gambar. Sebenarnya tutorial ini sudah didapatkan pada tutorialspoint.com namun disini saya akan lebih menjabarkan pembuatan gambar untuk dilakukan pinch zoom in zoom out. Untuk lebih jelasnya ikuti step berikut ini 1. Buat project dengan nama PAPBgesture 2. Setelah melakukan create project, edit coding pada bebereapa bagian, yaitu; - MainActivity.java - Activity_main - String.xml - Dan AndroidManifest.xml 3. Edit MainActivity. Java pada src/com.example.papbgesture/mainactivity.java dengan mengisi code seperti berikut;
1. package com.example.papbgesture; 2. 3. import android.app.activity; 4. import android.graphics.matrix; 5. import android.os.bundle; 6. import android.view.menu; 7. import android.view.motionevent; 8. import android.view.scalegesturedetector; 9. import android.widget.imageview; 10. 11. public class MainActivity extends Activity { 12. 13. private ImageView img; 14. private Matrix matrix = new Matrix(); 15. private float scale = 1f; 16. private ScaleGestureDetector SGD; 17. @Override 18. protected void oncreate(bundle savedinstancestate) { 19. super.oncreate(savedinstancestate); 20. setcontentview(r.layout.activity_main); 21. img = (ImageView)findViewById(R.id.imageView1); 22. SGD = new ScaleGestureDetector(this,new ScaleListener()); 23. } 24. 25. @Override 26. public boolean ontouchevent(motionevent ev) { 27. SGD.onTouchEvent(ev); 28. return true; 29. } 30. 31. private class ScaleListener extends ScaleGestureDetector. 32. SimpleOnScaleGestureListener { 33. @Override 34. public boolean onscale(scalegesturedetector detector) { 35. scale *= detector.getscalefactor(); 36. scale = Math.max(0.1f, Math.min(scale, 5.0f)); 37. matrix.setscale(scale, scale); 38. img.setimagematrix(matrix); 39. return true; 40. } 41. } 42. @Override 43. public boolean oncreateoptionsmenu(menu menu) { 44. // Inflate the menu; this adds items to the action bar if it is present. 45. getmenuinflater().inflate(r.menu.main, menu); 46. return true; 47. } 48. } 4. Selanjutnya edit pada bagian activity main pada res/layout/activity_main.xml dengan mengisikan code sebagai berikut
1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2. xmlns:tools="http://schemas.android.com/tools" 3. android:layout_width="match_parent" 4. android:layout_height="match_parent" 5. android:paddingbottom="@dimen/activity_vertical_margin" 6. android:paddingleft="@dimen/activity_horizontal_margin" 7. android:paddingright="@dimen/activity_horizontal_margin" 8. android:paddingtop="@dimen/activity_vertical_margin" 9. tools:context=".mainactivity" > 10. 11. <TextView 12. android:id="@+id/textview1" 13. android:layout_width="wrap_content" 14. android:layout_height="wrap_content" 15. android:text="@string/hello_world" /> 16. 17. <ImageView 18. android:id="@+id/imageview1" 19. android:layout_width="match_parent" 20. android:layout_height="match_parent" 21. android:layout_below="@+id/textview1" 22. android:scaletype="matrix" 23. android:src="@android:drawable/sym_def_app_icon" /> 24. 25. </RelativeLayout> Untuk gambar graphical layout sebagi berikut 5. Selanjutnya edit pada bagian res/value/sting.xml
1. <?xml version="1.0" encoding="utf-8"?> 2. <resources> 3. 4. <string name="app_name">papbgesture</string> 5. <string name="action_settings">settings</string> 6. <string name="hello_world">pinch untuk zoom in dan zoom out</string> 7. 8. </resources> 6. Untuk yang di edit selanjutnya pada AndroidManifest.xml 1. <?xml version="1.0" encoding="utf-8"?> 2. <manifest xmlns:android="http://schemas.android.com/apk/res/android" 3. package="com.example.papbgesture" 4. android:versioncode="1" 5. android:versionname="1.0" > 6. 7. <uses-sdk 8. android:minsdkversion="8" 9. android:targetsdkversion="18" /> 10. 11. <application 12. android:allowbackup="true" 13. android:icon="@drawable/ic_launcher" 14. android:label="@string/app_name" 15. android:theme="@style/apptheme" > 16. <activity 17. android:name="com.example.papbgesture.mainactivity" 18. android:label="@string/app_name" > 19. <intent-filter> 20. <action android:name="android.intent.action.main" /> 21. 22. <category android:name="android.intent.category.launcher" /> 23. </intent-filter> 24. </activity> 25. </application> 26. 27. </manifest> 7. Kemudian apabila telah dilakukan semua step diatas, coba untuk melakukan run pada aplikasi ini. Apabila sudah tidak ada error, dapat dilakukan eksport aplikasi ke APK. 8. Untuk melakukan step eksport ke APK adalah - Klik menu file->eksport - Kemudian pilih export android application
- pilih keystore slection - masukkan data dibawah ini. Country code ID untuk Indonesia - finish 9. Apabila sudah selesai dapat dipindahkan ke android anda dan APK dapat langsung diinstal pada android anda. 10. Gambar dapat dilakukan pinch zoom in zoom out.
Daftar Pustaka: 1. http://tutorialspoint.com/android/android_gestures/ 2. http://cariprogram.blogspot.com/2014/07/aplikasi-android-image-zoom-in-zoomout-imageview-pinch-zoom-geser-klik-coordinate-pixel.html 3. http://agusharyanto.net/wordpress/?p=442