jika nama perusahaan yang ditampilkan pada
ListView tersebut diklik akan ditampilkan
Activity baru.
Saya akan membagi sedikit pengalaman saya dalam menangani kasus sejenis itu.
Saya membuat project Android sederhana yang mendekati kasus tersebut.
Saya buat
MainActivity yang menampilkan nama-nama
operating system, saya
extends class MainActivity dari
ListActivity untuk membuat tampilan ListView sederhana.
Source code class MainActivity adalah sebagai berikut
package tutorial.listview;
import android.os.Bundle;
import android.app.ListActivity;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends ListActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String[] values = new String[] { "Android", "iPhone", "WindowsMobile", "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X", "Linux", "OS/2" };
ArrayAdapter adapter = new ArrayAdapter(MainActivity.this,
android.R.layout.simple_list_item_1, values);
setListAdapter(adapter);
}
}
Jika
project dijalankan, kita akan mendapatkan sebuah program yang menampilkan list
operating system seperti gambar di bawah ini
Kemudian, saya ingin agar jika nama
operating system di list tersebut diklik akan ditampilkan Intent baru, caranya adalah dengan menambahkan method berikut di class MainActivity
public void onListItemClick(ListView l, View v, int position, long id) {
//New Intent Here
}
Di bagian
//New Intent Here dari method di atas tersebut nanti kita akan mencoding Activity baru yang akan muncul.
Source code class MainActivity akan menjadi seperti berikut
package tutorial.listview;
import android.os.Bundle;
import android.app.ListActivity;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends ListActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String[] values = new String[] { "Android", "iPhone", "WindowsMobile",
"Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X",
"Linux", "OS/2" };
ArrayAdapter adapter = new ArrayAdapter(MainActivity.this,
android.R.layout.simple_list_item_1, values);
setListAdapter(adapter);
}
public void onListItemClick(ListView l, View v, int position, long id) {
//New Intent Here
}
}
Kemudian buat sebuah Activity baru yang nantinya akan muncul setelah nama
operating system di tampilan ListView diklik. Saya beri nama
class NewActivity untuk Activity tersebut dengan
source code berikut
package tutorial.listview;
import android.app.Activity;
import android.os.Bundle;
public class NextActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.next_activity);
}
}
Kemudian buat
layout untuk NextActivity, saya beri nama
layoutnya next_menu.xml dengan isi sebagai berikut:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="nama_OS"
android:textAppearance="?android:attr/textAppearanceLarge" />
</LinearLayout>
Terakhir, kita lengkapi method untuk menampilkan NewActivity, ganti baris
//New Intent Here yang ada di class MainActivity dengan code berikut
Intent i = new Intent(MainActivity.this, NextActivity.class);
startActivity(i);
sehingga class MainActivity lengkapnya akan menjadi
package tutorial.listview;
import android.os.Bundle;
import android.app.ListActivity;
import android.content.Intent;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends ListActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String[] values = new String[] { "Android", "iPhone", "WindowsMobile", "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X", "Linux", "OS/2" };
ArrayAdapter adapter = new ArrayAdapter(MainActivity.this,
android.R.layout.simple_list_item_1, values);
setListAdapter(adapter);
}
public void onListItemClick(ListView l, View v, int position, long id) {
Intent i = new Intent(MainActivity.this, NextActivity.class);
startActivity(i);
}
}
Pastikan NextActivity sudah ditambahkan sebagai activity di AndroidManifest.xml
<activity
android:name="tutorial.listview.NextActivity"
android:label="@string/app_name">
</activity>
Selanjutnya coba jalankan program.
Saat salah satu nama operating system diklik, misalnya Android
Setelah itu akan muncul Activity baru
[postingan ini masih akan di
update lagi setelah mendapat
feedback]
Kita bisa juga melempar parameter dari satu Activity ke Activity berikutnya, insya Allah akan saya bahas di kesempatan lain
sumber:
http://www.vogella.com/articles/AndroidListView/article.html