Skip to content

Instantly share code, notes, and snippets.

@junsuk5
Last active August 29, 2015 14:25
Show Gist options
  • Select an option

  • Save junsuk5/47b66cf3364d55375414 to your computer and use it in GitHub Desktop.

Select an option

Save junsuk5/47b66cf3364d55375414 to your computer and use it in GitHub Desktop.
package com.example.android.listviewexam;
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;
import java.util.List;
public class CustomAdapter extends BaseAdapter {
private List<People> mData;
private Context mContext;
public CustomAdapter(Context context, List<People> data) {
mContext = context;
mData = data;
}
@Override
public int getCount() {
return mData.size();
}
@Override
public Object getItem(int position) {
return mData.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
// View 를 처음 로딩 할 때
convertView = LayoutInflater.from(mContext).inflate(R.layout.people_item, parent, false);
ImageView image = (ImageView)convertView.findViewById(R.id.image);
TextView name = (TextView)convertView.findViewById(R.id.name);
TextView phone = (TextView)convertView.findViewById(R.id.phoneNumber);
holder = new ViewHolder();
holder.image = image;
holder.name = name;
holder.phone = phone;
convertView.setTag(holder);
} else {
// View 재사용
holder = (ViewHolder) convertView.getTag();
}
// View 에 표시 할 Data 취득
People people = (People)getItem(position);
holder.image.setImageResource(people.getImageResourceId());
holder.name.setText(people.getName());
holder.phone.setText(people.getPhoneNumber());
// 완성 된 View 리턴
return convertView;
}
static class ViewHolder {
ImageView image;
TextView name;
TextView phone;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment