package czd.lib.adapter;
import android.content.Context;
import czd.lib.data.JSONUtil;
import org.json.JSONArray;
import org.json.JSONException;
/**
* Created with IntelliJ IDEA.
* User: chenzhidong
* Date: 13-12-28
* Time: 上午10:35
*/
public abstract class BaseJsonAdapter extends android.widget.BaseAdapter {
protected Context context;
protected JSONArray datas;
public BaseJsonAdapter(Context context) {
this.context = context;
this.datas = new JSONArray();
}
public BaseJsonAdapter(Context context, JSONArray datas) {
this.context = context;
this.datas = datas;
}
public void setDatas(JSONArray datas) {
this.datas = datas;
notifyDataSetChanged();
}
public void appendDatas(JSONArray datas) {
this.datas = JSONUtil.combineArrays(this.datas, datas);
notifyDataSetChanged();
}
public void removeItem(int position){
this.datas=JSONUtil.removeAtIndex(this.datas,position);
notifyDataSetChanged();
}
public void cleanAll(){
this.datas=new JSONArray();
notifyDataSetChanged();
}
@Override
public int getCount() {
return this.datas == null ? 0 : this.datas.length();
}
@Override
public Object getItem(int position) {
try
{
if (this.datas != null && this.datas.length() > 0 && position >= 0 && position <= this.datas.length())
return datas.getJSONObject(position);
} catch (JSONException e)
{
e.printStackTrace();
}
return null;
}
}