Hi i have problem with custom listview with listactivity i want when i click item from listview then new activity will started.
Entitiy
package com.custom.listview; public class EntitasRestoran { String namaresto = ""; String alamatresto = ""; int pic; public String getNamaResto() { return namaresto; } public void setNamaResto(String n) { this.namaresto = n; } public String getAlamatResto() { return alamatresto; } public void setAlamatResto(String a) { this.alamatresto = a; } public int getPicResto() { return pic; } public void setPicResto(int p) { this.pic = p; } }
Custom adapter
package com.custom.listview; import java.util.ArrayList; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; public class CustomBaseAdapter extends BaseAdapter { private static ArrayList<EntitasRestoran> restoran; private LayoutInflater mInflater; public CustomBaseAdapter(Context context, ArrayList<EntitasRestoran> res) { restoran = res; mInflater = LayoutInflater.from(context); } public int getCount() { return restoran.size(); } public Object getItem(int position) { return restoran.get(position); } public long getItemId(int position) { return position; } public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder; if (convertView == null) { convertView = mInflater .inflate(R.layout.custom_item_listview, null); holder = new ViewHolder(); holder.nama = (TextView) convertView .findViewById(R.id.namarestoran); holder.alamat = (TextView) convertView .findViewById(R.id.alamatrestoran); holder.im = (ImageView) convertView.findViewById(R.id.img); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); } holder.nama.setText(restoran.get(position).getNamaResto()); holder.alamat.setText(restoran.get(position).getAlamatResto()); holder.im.setBackgroundResource(restoran.get(position).getPicResto()); return convertView; } static class ViewHolder { TextView nama; TextView alamat; ImageView im; } }
Main Activity
package com.custom.listview; import java.util.ArrayList; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.widget.ListView; public class MainActivity extends Activity { ListView lv; ArrayList<EntitasRestoran> restoran = new ArrayList<EntitasRestoran>(); EntitasRestoran entitasrestoran; String[] arrayRestoran = { "Kare Ayam", "Spesial Sambal", "Waroeng Steak", "Hoka Bento" }; String[] arrayAlamat = { "Jalan Kartini", "Jalan Bimo", "Jalan Arjuno", "Jalan Merdeka" }; int[] ArrayPicRestoran = { R.drawable.kareayam, R.drawable.ss, R.drawable.ws, R.drawable.hokben }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); lv = (ListView) findViewById(R.id.listView1); for (int i = 0; i < arrayRestoran.length; i++) { entitasrestoran = new EntitasRestoran(); entitasrestoran.setNamaResto(arrayRestoran[i]); entitasrestoran.setAlamatResto(arrayAlamat[i]); entitasrestoran.setPicResto(ArrayPicRestoran[i]); restoran.add(entitasrestoran); } CustomBaseAdapter custom = new CustomBaseAdapter(this, restoran); lv.setAdapter(custom); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.activity_main, menu); return true; } }
when i click that listview then new activity will show up