BAB 5 Android Event Handling . Pemrograman Aplikasi Perangkat Bergerak FILKOM UB BAB 5 Android Event Handling Mahardeka Tri Ananta deka.kelas@gmail.com

  • View
    222

  • Download
    5

Embed Size (px)

Text of BAB 5 Android Event Handling . Pemrograman Aplikasi Perangkat Bergerak FILKOM UB BAB 5 Android Event...

  • Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

    BAB 5Android Event Handling

    Mahardeka Tri Ananta

    deka.kelas@gmail.com

  • Konten

    Event pada Widget

    Event Handler

    Event Listener

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • Event

    Event adalah suatu cara untuk mengumpulkan data tentang interaksipengguna dengan komponen interaktif dari Aplikasi.

    Contoh: Aksi (action) yang terjadi ketika user berinteraksi denganwidget (clicks, typing, scrolling)

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • Setting an Event Listener (SoftCoding)

    1. Interacting with widgets /views in Layout, give that view a unique ID property value in Java code, call findViewById to access its View object pass it a parameter of R.id.your_unique_ID cast the returned value to the appropriate type (Button, TextView,

    etc.) In Layout XML file:

    In Activity onCreate() method:TextView nameView = (TextView)findViewById(R.id.textViewName);

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • Setting an Event Listener (SoftCoding)

    2. Modify onClick property in layout file. Scroll down its Properties until you find onClick. or edit .XML file manually via

    text.

    Type the name of a method you'll write to handle the click event

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • Setting an Event Listener (SoftCoding)

    3. Add method in onclick Event in JavaCode In your Activity, create method that have been registered in layout.

    Add View object in method parameter.

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • activity_main.xml

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • public class MainActivity extends AppCompatActivity {

    private Button button1, button2;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);

    button1=(Button)findViewById(R.id.button);

    button2=(Button)findViewById(R.id.button2);

    }

    public void button1(View view){

    Intent dial = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:0888111222"));

    startActivity(dial);

    }

    public void button2 (View view){

    Toast.makeText(this,"you have pressed: " +button2.getText(), Toast.LENGTH_LONG).show();

    }

    }

    MainActivity.java

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • Setting an Event Listener (Hard Coding)

    An event is handled by an event listener object.

    Define an object that implements event listener interface and register it with the designated View. View.OnClickListener (for handling "clicks" on a View),

    View.OnTouchListener (for handling screen touch events),

    View.OnKeyListener (for handling device key presses).

    etc..

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • Setting an Event Listener (Hard Coding)

    Illustration

    View Widget

    Button

    Event Handler Object

    setOnClickListener() onClick()

    User Click

    Event

    View.OnClickListener

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • Setting an Event Listener (Hard Coding)

    Step 1: Add button to Activity Activity.findViewById( buttonViewID )

    Step 2: Implement Event Handler for a Button click event means the handler object should implements the View.OnClickListener interface consists of TWO OPTIONS in the following:

    1. using a separate (specific) object to handle event(s) that implements the interface, OR

    2. have the Activity containing the button do the event handling and letting the Activity implements the interface

    Step 3: Register Event Handler to the button button.setOnClickListener( clickEventHandlerObject )

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • Setting an Event Listener (Hard Coding) Option 1 EVENT HANDLING CODE in separate object named mCorkyListener

    // Create an anonymous implementation of OnClickListener STEP 2 private OnClickListener mCorkyListener = new OnClickListener() {

    public void onClick(View v) {// do something when the button is clicked

    }};

    //Now inside your Activity class onCreate event methodprotected void onCreate(Bundle savedValues) {

    ...

    // STEP 1: Capture our button from layoutButton button = (Button)findViewById(R.id.corky);

    }

    // STEP 3: Register the onClick listener // with the implementation abovebutton.setOnClickListener(mCorkyListener);

    ... Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • Setting an Event Listener (Hard Coding) - Option 2

    Here's the code to handle Button's click event using the Activity itself

    public class ExampleActivity extends Activity implements OnClickListener {protected void onCreate(Bundle savedValues) {

    ...

    Button button = (Button)findViewById(R.id.corky); // STEP 1button.setOnClickListener(this); //STEP 2 registration

    }

    // Implement the OnClickListener callback method// STEP 3 event handler

    public void onClick(View v) {

    // do something when the button is clicked

    }...

    }

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • activity_main.xml

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • activity_main.xml

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • public class MainActivity extends AppCompatActivity {

    private EditText txtAngka1, txtAngka2, txtHasil;

    private Button buttonHitung;

    private View.OnClickListener click;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);

    txtAngka1= (EditText)findViewById(R.id.editText);

    txtAngka2= (EditText)findViewById(R.id.editText2);

    txtHasil = (EditText)findViewById(R.id.editText3);

    buttonHitung = (Button)findViewById(R.id.button);

    click = new View.OnClickListener() {

    @Override

    public void onClick(View v) {

    try {

    int angka1 = Integer.parseInt(txtAngka1.getText().toString());

    int angka2 = Integer.parseInt(txtAngka2.getText().toString());

    int jumlah = angka1 + angka2;

    txtHasil.setText(String.valueOf(jumlah));

    }

    catch (Exception e){

    e.printStackTrace();

    }

    }

    };

    buttonHitung.setOnClickListener(click);

    }

    }

    MainActivity.java

    STEP 1

    // Create an anonymous implementation of OnClickListener STEP 2

    // STEP 3: Register the onClick listener

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • TUGAS KELOMPOK

    Buat sebuah aplikasi Android pada platform Google Android yang teridiri dari hanya 1 Activity, dengan menggunakan 4 event handler yang ada di bawah ini:

    1. onClick()2. onLongClick()3. onFocusChange()4. onKey()5. onTouch()6. onCreateContextMenu()

    Jalankan aplikasi, kemudian amati perbedaan dari 4 event handler yang digunakan

    Buat dokumentasi (.pdf) yang berisi:1. Langkah2 implementasi Event Handling pada aplikasi yang Anda buat (dilengkapi dengan

    screenshot)2. Jelaskan perbedaan dari 6 event handler yang ada di atas, dan berikan contoh kasus

    penggunaannya

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

  • TUGAS KELOMPOK

    Nama File: PAPB-G-T3-Kelompok99

    Deadline: 6 OKTOBER 2015

    Dikumpulkan secara kolektif di koordinator kelas.

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB

    KUIS 1 PAPB 13 OKTOBER 2016 closed book (Tulis tangan [Teori & Code Completion])Materi:1. Perkembangan Aplikasi Mobile2. Android Activities3. User Interface4. Event Handling

  • TERIMA KASIH SEMOGA BERMANFAAT

    Lab. Pemrograman Aplikasi Perangkat Bergerak FILKOM UB