Jumat, 01 April 2016

PROGRAM ANDROID INTENT MENGGUNAKAN LISTVIEW

     Kali saya akan berbagi ilmu tentang bagaimana cara membuat Intent dalam android tapi menggunakan listview. Di beberapa kasus, mungkin sebagian org yang masih awam, menggunakan Intent dengan menggunkan Button. Nah, kali ini saya akan ajarkan bagaimana menghubungkan 2 halaman di program android dengan cara hanya mengklik pada bagian Listview. Sebelumnya ini bentuk program yang akan saya terangkan. 
 
         Keterangan dari gambar diatas, saat kita klik Sumatera Barat, maka akan berpindah ke halaman sumatera barat yang berisikan kota-kota yang terdapat didalamnya.
Tanpa basa-basi lagi langsung saja kita akan membuat programnya, berikut langkah-langkahnya.
  • buatlah sebuah project baru, dan beri nama IntentList, untuk pengaturannya silahkan anda setting sendiri.
  • pada activity_main.xml, silahkan anda design seperti gambar berikut. dan untuk komponen yang anda gunakan lihat gambar disamping gambar designnya. 

  • untuk setiap komponen jangan lupa di beri ID, agar dapat diinialisasikan pada saat membuat programnya. pada design di atas saya gunakan 4 komponen, yaitu Textview, LinearLayout lalu Listview yang anda masukkan ke dalam LinearLayout, dan Button.
  • untuk ID pada Listview buatlah provinsi. lalu pada Button buatlah keluar. hanya 2 buah ini yang terpenting anda beri ID, untuk yang lainya tidak perlu diberi nama ID.
  • Setelah kita buat sebuah file XML baru dengan nama sumbar.xml. dan design seperti gambar berikut dan juga untuk komponen yang digunakan lihat gambar dibawah. 


  • Komponen yang terdapat didalamnya hampir sama dengan Activity_Main.xml. hanya saja beri nama ID yang berbeda, untuk Listview beri nama kotasumbar dan untuk Textview yang berisikan penjelasan dari kota-kota beri nama ID ketsumbar dan untuk Button beri nama ID kembali1.
  • setelah selesai, selanjutnya kita akan beranjak ke bagian MainActivity.java, dan anda ketikkan codding dibawah ini. 
  • package com.example.intenlist;
    import android.os.Bundle;
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.view.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.*;
    import android.content.DialogInterface;
    import android.content.Intent;

    public class MainActivity extends Activity implements OnClickListener {

    ListView provinsi;
    Button keluar;
    String[] daftarprovinsi = new String[]{"Sumatera Barat","Sumatera Utara","Sumatera Selatan" ,"Riau","Jambi","Bengkulu"};

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    keluar = (Button)findViewById(R.id.keluar);
    keluar.setOnClickListener(this);

    ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, daftarprovinsi);

    provinsi = (ListView)findViewById(R.id.provinsi);
    provinsi.setAdapter(adapter);
    provinsi.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView arg0, View arg1, int posisi, long arg3) {
     // TODO Auto-generated method stub
    int item = posisi;
    String itemText = (String)provinsi.getItemAtPosition(posisi);
    Toast.makeText(getBaseContext(), "Provinsi " + itemText, Toast.LENGTH_LONG).show(); 

    if(itemText.equals("Sumatera Barat")){
     Intent Sumbar = getIntent();
     Sumbar = new Intent (MainActivity.this,sumbar.class);
     startActivity(Sumbar);
     }
    } });
     }

     @Override
     public void onClick(View arg0) {
     // TODO Auto-generated method stub

     if(arg0==keluar){
     AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setMessage("Apakah Anda Ingin KEluar..??").setCancelable(false). setPositiveButton("YA", new DialogInterface.OnClickListener() {

    @Override
     public void onClick(DialogInterface arg0, int arg1) {
     MainActivity.this.finish();
     // TODO Auto-generated method stub
     } }). setNegativeButton("TIDAK", new DialogInterface.OnClickListener() {
     @Override
     public void onClick(DialogInterface arg0, int arg1) { arg0.cancel();
     // TODO Auto-generated method stub } }).show(); } }}




  • Lalu buatlah sebuah Class baru dan beri nama sumbar.java dan ketikkan kode dibawah ini. 

  • package com.example.intenlist;
    import android.os.Bundle;
    import android.app.Activity;
    import android.content.Intent;
    import android.view.Menu;
    import android.view.View;
    import android.widget.AdapterView;
    import android.widget.ArrayAdapter;
    import android.widget.ListView;
    import android.widget.Button;
    import android.widget.TextView;

    public class sumbar extends Activity {

    ListView kotasumbar;
    Button kembali1;
    TextView ketsumbar;

    String[] kotasumbar1 = new String[]{"Padang","Padang Panjang","Batu Sangkar"};

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.sumbar);

    ketsumbar=(TextView)findViewById(R.id.ketsumbar);
    ketsumbar.setText("");

    kembali1 = (Button)findViewById(R.id.kembali1);
    kembali1.setOnClickListener(new View.OnClickListener() {

    @Override

    public void onClick(View arg0) {

    Intent intent = new Intent();
    setResult(RESULT_OK, intent); finish();
     } });

     ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, kotasumbar1);
    kotasumbar = (ListView)findViewById(R.id.kotasumbar);
    kotasumbar.setAdapter(adapter);
    kotasumbar.setOnItemClickListener(new AdapterView.OnItemClickListener() {

    @Override
    public void onItemClick(AdapterView arg0, View arg1, int position, long id) {

    // TODO Auto-generated method stub

    String keterangan = "Kota "+kotasumbar1[position];
    ketsumbar.setText(keterangan); } });
     }
    }




  • nah maka kedua halaman dapat tersambungkan dan jangan lupa pada bagian AndroidManifest.xml inisialkan Class sumbar, agar dapat terhubung dengan halaman MainActivity dengan cara seperti gambar berikut. 
  • Setelah itu silahkan di jalankan programnya.


  • Mungkin sekian yang dapat saya jelaskan, untuk pengembangannya silahkan anda pelajari sendiri. untuk project lengkapnya dapat anda download pada link bawah ini.

    0 komentar:

    Posting Komentar

    Daftar Posting

    Chairunnas. Diberdayakan oleh Blogger.

    Postingan Terbaru