package com.cheng.animationstudy.customview.googleimitatecode;
import android.app.Activity;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import com.cheng.animationstudy.R;
import com.cheng.utils.ViewFinder;
import java.util.ArrayList;
import java.util.List;
/**
*
*/
public class ListViewDemoAdapter extends BaseAdapter {
private Context mContext;
private List<String> mDummyStrings;
public ListViewDemoAdapter(Context mContext) {
this.mContext = mContext;
mDummyStrings = getDummyStrings();
}
@Override
public int getCount() {
return mDummyStrings.size();
}
@Override
public Object getItem(int position) {
return mDummyStrings.get(position);
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder viewHolder;
if(convertView==null){
LayoutInflater inflater = ((Activity) mContext).getLayoutInflater();
convertView = inflater.inflate(R.layout.item_swipylv, parent, false);
viewHolder = new ViewHolder();
viewHolder.mCellNumberTV = ViewFinder.findViewById(convertView, R.id.sdi_cellnumber_tv);
viewHolder.mCellTextTV = ViewFinder.findViewById(convertView, R.id.sdi_celltext_tv);
convertView.setTag(viewHolder);
}else{
viewHolder = (ViewHolder) convertView.getTag();
}
viewHolder.mCellNumberTV.setText("" + position);
viewHolder.mCellTextTV.setText(mDummyStrings.get(position));
return convertView;
}
private static class ViewHolder {
TextView mCellNumberTV;
TextView mCellTextTV;
}
public void addString(boolean isLoadMore) {
if (mDummyStrings == null) return;
int size = mDummyStrings.size();
mDummyStrings.add(isLoadMore?size:0, isLoadMore?"Load New Data":"Refresh New Data");
}
private List<String> getDummyStrings() {
List<String> dummyStrings = new ArrayList<>();
dummyStrings.add("You want");
dummyStrings.add("to test");
dummyStrings.add("this library");
dummyStrings.add("from both");
dummyStrings.add("direction.");
dummyStrings.add("You may");
dummyStrings.add("be amazed");
dummyStrings.add("when done");
dummyStrings.add("so!");
dummyStrings.add("I am");
dummyStrings.add("going to");
dummyStrings.add("add a little");
dummyStrings.add("more lines");
dummyStrings.add("for big");
dummyStrings.add("smartphones.");
return dummyStrings;
}
}