Reputation: 374
I have a custom adapter for listView and I want to load my item parcial like first time this Activity started load firts 10 row or something like that I look up endless adapter but I couldn't find good example of endless adapter with custom adapter if you guys help me I will be appreciated.
here is my custom adapter
public class DynamicListView extends BaseAdapter {
ImageLoader imageLoader;
Context c;
ArrayList<String> images = new ArrayList<String>();
ArrayList<String> baslik = new ArrayList<String>() ;
ArrayList<String> icerik = new ArrayList<String>() ;
ArrayList<ListViews> lists = new ArrayList<ListViews>();
ArrayList<ArrayList> list1 = new ArrayList<ArrayList>();
ArrayList<String> temp = new ArrayList<String>();
DynamicListView(Context c ,ArrayList<ArrayList> list ,String tur)
{
this.list1 = list;
if(tur.equals("News"))
{
Log.i("For disi loglar",String.valueOf(list1.size()));
for(int i = 0; i < list1.size() ; i++)
{
temp = list1.get(i);
Log.i("Inside of For",list1.get(i).get(3).toString());
images.add( temp.get(3) );
Log.i("Inside of For",list1.get(i).get(0).toString());
baslik.add( temp.get(0) );
Log.i("Inside of For",list1.get(i).get(1).toString());
icerik.add(temp.get(1));
}
temp.clear();
}
else if(tur.equals("Announcements"))
{
}
this.c = c;
imageLoader = ImageLoader.getInstance();
for(int i= 0 ; i < images.size() ; i++)
{
lists.add( new ListViews( images.get(i), baslik.get(i), icerik.get(i) ) );
}
}
@Override
public int getCount() {
return lists.size();
}
@Override
public Object getItem(int position) {
return lists.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row = convertView;
myViewHolder holder = null;
if(row==null)
{
LayoutInflater inflate = (LayoutInflater) c.getSystemService(c.LAYOUT_INFLATER_SERVICE);//Butun layout u inflate'in icine aldik
row = inflate.inflate(R.layout.dynamic_lists , parent , false ); //gerekli islemler
holder = new myViewHolder(row);
row.setTag(holder);
}
else
{
holder = (myViewHolder) row.getTag();
}
imageLoader.displayImage(lists.get(position).image,holder.image );
holder.baslik.setText(lists.get(position).baslik);
holder.icerik.setText(lists.get(position).icerik);
return row;
}
class myViewHolder
{
private ImageView image;
private TextView baslik;
private TextView icerik;
myViewHolder(View v)
{
this.image = (ImageView) v.findViewById(R.id.ivDynamic);
this.baslik = (TextView) v.findViewById(R.id.tvDynamic1);
this.icerik = (TextView) v.findViewById(R.id.tvDynamic2);
}
}
class ListViews
{
ListViews(String image, String baslik, String icerik)
{
this.baslik = baslik;
this.icerik = icerik;
this.image = image;
}
String image;
String baslik;
String icerik;
}
}
Upvotes: 0
Views: 866
Reputation: 6792
This can be achieved when the list is scrolled to auto populate the next batch of data. Please see the below links:
Lemme know if you are looking for something more custom.
Upvotes: 0