Hey Gwener's, What's Up!
Dalam membuat sebuah aplikasi, Inputhandler merupakan bagian dari interaksi yang harus dikelola dan disediakan oleh pengembangan sebagai bentuk interaksi antara aplikasi dan penggunnya. Inputhandler ini juga telah disediakan oleh Framework LibGDX. Kita bisa memanipulasi event baik pada screen maupun pada tombol yang digunakan sebagai interaksi nantinya.
Dalam membuat sebuah aplikasi, Inputhandler merupakan bagian dari interaksi yang harus dikelola dan disediakan oleh pengembangan sebagai bentuk interaksi antara aplikasi dan penggunnya. Inputhandler ini juga telah disediakan oleh Framework LibGDX. Kita bisa memanipulasi event baik pada screen maupun pada tombol yang digunakan sebagai interaksi nantinya.

Apa itu Input Handling
Mengenai defenisi Input Handling tentu secara harfiah dapat diartikan sebagai bentu pengelolaan ataupun menagemen dari input yang diberikan. Namun lebih spesifik disini, input handling merupakan cara memanipulasi event yang diberikan oleh pengguna seperti jika berbicara mobile yakni touch screen, keyboard, sound volume, screen orientasi dan lain sebagainya. Berbagai macam interaksi inilah yang mesti dikelola dengan memberikan tindakan yang sesuai pada sebuah aplikasi yang dijalankan.
LibGDX telah menyediakan dan memberikan sebuah interface sehingga mempermudah developer untuk mengelola event yang akan digunakan. Kita bisa menggunakan interface InputProcessor, Interface ini berisi fungsi dari setiap event input yang ada pada mobile seperti yang telah saya jelaskan diatas.
Implementasi InputProcessor
Sebagai contoh kita akan memanipulasi event touch screen pada aplikasi mobile. Umumnya interaksi akan dilakukan pada even ini. Untuk lebih mempermudah touch screen akan bisa dilakukan pada semua titik screen. Perhatikan code berikut ini.
public class InputHandler implements InputProcessor { //... @Override public boolean touchDown(int screenX, int screenY, int pointer, int button) { Gdx.app.log("Input Handler", "user is touch the app"); return true; } @Override public boolean touchUp(int screenX, int screenY, int pointer, int button) { Gdx.app.log("Input Handler", "user is touch lose from the app"); return true; } //... }
Dari code diatas kita akan fokus pada 2 fungsi interface yakni touchDown dan touchUp. Maksud fungsi ini adalah ketika seorang pengunkan melakukan touch (Tap) pada perangkat mobilenya maka fungsi touchDown akan tereksekusi. event ini akan berlansung sekali saja walaupun touch yang pengguna lakukan dalam waktu yang lama. Kemudian, ketika touch tersebut dilepas fungsi selanjutnya akan tereksekusi yakni touchUp dan sama halnya dengan touchDown fungsi inipun dieksekusi hanya sekali.
Perlu diingat bahwa setiap event yang diberikan akan mengeksekusi sesuai dengan fungsi yang digunakan dan ini berlaku jika dilakukan berulang-ulang kali pada setiap event tersebut.
Stage sebagai InputHandler dari LibGDX
Jika contoh diatas kita ingin membuat input handler secara kustom, namun sebenarnya input handler ini telah disediakan oleh LibGDX. InputHandler ini dinamakan Stage, tak sekedar input handler saja bisa digunakan untuk menggambar sebuah tombol ataupun objek lain yang akan digunakan sebagai input atau yang disebut sebagai Actor.
Stage akan membuat semua actor yang terigistrasi akan di draw pada screen aplikasi tersebut. Setiap actior juga bisa memiliki event handler yang berbeda dan diconfigurasi sesuai keinginan developer. Event handler yang akan diekseskusi adalah event yang terdapat pada setiap actor jika ada. Contohnya adalah event tombol play, tombol play sebagai actor akan didraw dan ditampilkan pada screen sehingga ketika pengguna menekan tombol ini maka event yang ada pada tombol (actor) play ini akan tereksekusi dengan sendirinya.
Cara Menggunakan Stage sebagai InputHandler
Berikut akan saya berikan contoh untuk menggunakan Stage sebagai InputHandler seperti yang saya jelaskan diatas.
Stage stage = (Stage)Gdx.input.getInputProcessor(); stage.addListener( new InputListener(){ @Override public boolean touchDown(InputEvent event, float x, float y, Gdx.app.log("Stage", "hey you touch the screen"); return true; } }); TextureRegion playTexture = new TextureRegion(); ImageButtonStyle playStyle = new ImageButtonStyle(); playStyle.imageUp = new TextureRegionDrawable(playTexture); playStyle.imageDown = new TextureRegionDrawable(playTexture); playButton = new ImageButton(playStyle); playButton.setWidth(29); playButton.setHeight(16); playButton.addListener(new InputListener(){ @Override public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) { Gdx.app.log("Play", "Hey you run this app"); return super.touchDown(event, x, y, pointer, button); } }); stage.addActor(playButton);
Perhatikan code diatas, cukup jelas bahwa ada 2 event touchDown yang terregistrasi, yakni pada stage dan pada tombol play. Sehingga hal ini akan tereksekusi secara berurutan. Berikut alurnya.
- Jika tombol play di tekan oleh penggunakan makan event touchDown pada tombol play akan dieksekusi terlebih dahulu selanjutnya event touchDown pada Stage
- Jika touch hanya dilakukan diluar dari tombol play makan yang akan dieksekusi adalah event touchDown pada Stage
- Hal ini akan berlaku untuk seterusnya
Nah, bagaimana sudah cukup mengenal inputhandler dari libGDX ini. selanjutnya sobat bisa membaca tentang
Let's Code with LibGDX on eclipse
Silahkan dicoba
ReplyDeleteشركة تنظيف بالدمام
ReplyDeleteشركة تنظيف منازل بالدمام
شركة تنظيف فلل بالدمام
شركة تنظيف شقق بالدمام
شركة تسليك مجارى بالدمام
شركة تنظيف منازل بالخبر
شركة تنظيف فلل بالخبر
شركة تنظيف شقق بالخبر
شركة تنظيف بالخبر
شركة تسليك مجارى بالخبر
شركة كشف تسربات المياه بالاحساء
شركة مكافحة حشرات بالدمام
مع شركة اركان المملكه للتنظيف,ومكافحه الحشرات,وكشف التسربات,وتسليك المجارى,ونقل العفش,وتنظيف البيوت انت
ReplyDeleteتتعامل مع افضل شركة بالمملكه ككل لانها تتعامل باقل الاسعار المتاحه فى مجال العمل
ونحن نوفر لك كل ما هو جديد وبخصم 30%فى مجال الحساب اذا معنا انت فى كل امان ممكن
اتصل بشركة اركان المملكه لانها الافضل دائما فى كل المجالات
تمتلك الشركة كل وسائل التوصيل والنقل 24 ساعه
:::::::::::::::::::::::::::::::::::::
شركة كشف تسربات المياه بجازان
شركة كشف تسربات المياه بخميس مشيط
شركة كشف تسربات المياه بابها
شركة كشف تسربات المياه بالدمام
شركة كشف تسربات المياه بالرياض
شركة نقل اثاث بجازان
شركة تسليك مجارى بالدمام
شركة تسليك مجارى بخميس مشيط
شركة تسليك مجارى بجازان
شركة تسليك مجارى بنجران
شركة مكافحه حشرات بخميس مشيط
شركة تسليك مجارى بابها
شركة نقل عفش بالرياض
شركة نقل عفش بخميس مشيط
هكذا شركة اركان المملكه تقدم الخدمه الممتازه التى بدونها لا تستطيعوا العمل الجاد
اننا نتعامل بالافضليه الكامله لاننا نتعامل بكل الاسعار البسيطه والممكنه
تحت شعار الراحه الكامله والاداء المتميز والخدمه طول اليوم
معنا انت فى كل امان اتصل نصلك اينما كنت
لا داعى للقلق وانت تتعامل مع شركة اركان المملكه للتنظيف والمكافحه والتسليك
ReplyDeleteوغير ذالك من كافه انواع التنظيف فى المملكه السعوديه باكملها اذا
كل ما عليكم هو زياره صفحتنا للتطلع على اقل الاسعار المتاحه
والتى تفى احتياجاتكم الخاصه
شركة مكافحة حشرات بالدمام
شركة مكافحة حشرات بابها
شركة رش مبيدات بجازان
شركة مكافحه حشرات بالاحساء
شركة رش مبيدات بالرياض
شركة اركان المملكه
شركة تنظيف بابها
شركة تنظيف فلل بابها
شركة تنظيف بالدمام
شركة تنظيف منازل بالرياض
شركة تنظيف منازل بابها
شركة تنظيف منازل بخميس مشيط
شركة تنظيف شقق بالدمام
شركة تنظيف بالطائف
شركة تنظيف بالاحساء
الشركة الاولى والكبيره والتى لها تاريخ كبير فى كل المجالات مع شركة اركان المملكه تعامل معنا تصل الى بر المان
معنا تجد كل العروض والمميزات التى لا تجدوها مع احد
اذا شركة اركان المملكه هى من اعرق الشركات فى كافه المجالات والخدمات اذا نحن نتعامل فى كل ما هو تنظيف ومكافحه وكشف تسربات
اتصلوا نصلكم اينما كنتم فى كل وقت وكل مكان