import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import java.util.List;
public class ListAdapter extends BaseAdapter
private Context context;
private List persons;
private static class ViewHolder
ImageView photo;
TextView name;
TextView address;
TextView job;
public ListAdapter(Activity activity, List persons)
this.context = activity.getBaseContext();
this.persons = persons;
@Override
public int getCount()
return persons.size();
@Override
public Object getItem(int id)
return persons.get(id);
@Override
public long getItemId(int id)
return id;
@Override
public View getView(int pos, View v, ViewGroup vGroup)
// TODO Auto-generated method stub
ViewHolder holder;
LayoutInflater inflater = (LayoutInflater)
context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
if (v == null)
holder = new ViewHolder();
v = inflater.inflate(R.layout.list_item, vGroup, false);
holder.photo = v.findViewById(R.id.photo);
holder.name = v.findViewById(R.id.name);
holder.address = v.findViewById(R.id.address);
holder.job = v.findViewById(R.id.job);
v.setTag(holder);
else
holder = (ViewHolder) v.getTag();
Person p = persons.get(pos);
holder.photo.setImageResource(p.getPhotoId());
holder.name.setText(p.getName());
holder.address.setText(p.getAddress());
holder.job.setText(p.getJob());
return v;
Langkah 7:
Cara Membuat Custom list view dengan gambar icon dan teks di android studio Part 7
Modifikasi isi MainActivity.java sehingga seperti code di bawah ini:
File: MainActivity.java
package app.example.listview;
import android.os.Bundle;
import android.widget.ListView;
import androidx.appcompat.app.AppCompatActivity;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//ambil list view dari activity_main.xml
ListView list=findViewById(R.id.list_view);
//efinisikan list adapter yang kita buat
ListAdapter adapter=new ListAdapter(this,createPersons());