Gribview分页加载数据出错
来源:互联网 发布:贵州省大数据平台 编辑:程序博客网 时间:2024/06/08 19:04
重复加载,加载完最后一条数据应该给 "没有更多数据了....";但运行程序,确是加载完最后一条数据之后再次从头开始加载数据
public class ClassActivity extends Activity implements OnClickListener {
private GridView gv;
private ImageView imageView;
private String classid;
private int count=1;
List<Map<String, Object>> lists = new ArrayList<Map<String, Object>>();
private boolean is_divpage;
private ClassTypeAdapter adapter;
String url="http://192.168.11.2:8080/class-activity-img-type.html?pageLines=4&classId="+Class_ID.getClass_ID()+"&pageNo=";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.classimage);
gv=(GridView) findViewById(R.id.gridView1);
imageView=(ImageView) findViewById(R.id.imageView1);
adapter=new ClassTypeAdapter(this);
new DownloadTask().execute(url,Integer.toString(count));
btnActivicon.setOnClickListener(this);
btnIntro.setOnClickListener(this);
btnCulture.setOnClickListener(this);
btnWork.setOnClickListener(this);
imageView.setOnClickListener(this);
gv.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
// TODO Auto-generated method stub
if(is_divpage && scrollState==OnScrollListener.SCROLL_STATE_IDLE){
Toast.makeText(ClassActivity.this, "获取数据", 1).show();
new DownloadTask().execute(url,Integer.toString(count));
}
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
// TODO Auto-generated method stub
is_divpage = (visibleItemCount + firstVisibleItem == totalItemCount);
}
});
gv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// TODO Auto-generated method stub
GridView gridView=(GridView) parent;
HashMap<String, String> map = (HashMap<String, String>)
gridView.getItemAtPosition(position);
String type=map.get("type");
Intent intent_A=new Intent(ClassActivity.this,ClassView.class);
intent_A.putExtra("ClassImgType", type);
startActivity(intent_A);
}
});
}
class DownloadTask extends AsyncTask<String, Void, List<Map<String, Object>>> {
@Override
protected List<Map<String, Object>> doInBackground(String... params) {
// TODO Auto-generated method stub
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
HashMap<String, Object> map;
HttpClient client = new DefaultHttpClient();
HttpGet get = new HttpGet(params[0] + params[1]);
try {
HttpResponse response = client.execute(get);
if (response.getStatusLine().getStatusCode() == 200) {
System.out.println("联网成功");
String jsonData = EntityUtils.toString(response.getEntity(), "UTF-8");
try {
JSONArray jsonArray = new JSONArray(jsonData);
if (!jsonArray.isNull(0)) {
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject object = jsonArray.getJSONObject(i);
String type = object.getString("type");
String title=object.getString("title");
String img = object.getString("indexImg");
String photo = object.getString("img");
String date =object.getString("operationTime");
map = new HashMap<String, Object>();
map.put("type", type);
map.put("title", title);
map.put("indexImg", img);
map.put("img", photo);
map.put("operationTime", date);
list.add(map);
}
return list;
}
}
catch (JSONException e) {
// TODO Auto-generated catch block
}
}
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("---1--->" + list.size());
return list;
}
@Override
protected void onPostExecute(List<Map<String, Object>> result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
if (result.size() > 0) {
lists.addAll(result);
adapter.setData(lists);
if (count == 1) {
gv.setAdapter(adapter);
}
adapter.notifyDataSetChanged();
count++;
} else {
Toast.makeText(getApplicationContext(), "没有更多数据了....", 0).show();
}
}
@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
super.onPreExecute();
}
}
0 0
- Gribview分页加载数据出错
- ListView分页加载数据
- ListView分页加载数据
- listView分页加载数据
- listView 分页加载数据
- 分页加载数据
- ListView分页加载数据
- ListView 分页加载数据
- 分页加载数据策略
- listView分页加载数据
- AngularJs分页加载数据
- Android 分页加载数据
- xListView分页加载数据
- ListView分页加载数据
- ListView分页加载数据
- ListView分页加载数据
- ListView分页加载数据
- ListView分页加载数据
- NET技术与J2EE技术对,指出各自的优缺点?
- python--列表list()操作
- 安装好IIS后,如何根据需求自动化设置IIS
- [求助]真机如何部署用于https通信的证书
- JsonOnlineViewer for Android Studio
- Gribview分页加载数据出错
- 如何重启nodejs服务
- 树莓派基金会发布桌面操作系统 PIXEL OS
- 怎么给windows mobile设备控件加上工具箱图标
- css Cursor:url()自定义鼠标指针样式为图片
- c# Uri为什么将编码后的字符串自动转换
- AJAX图片上传且上传前预览
- LeetCode刷题之路-Array
- ADB 用法大全