nsa_001 nsa_001
关注数: 28 粉丝数: 778 发帖数: 14,570 关注贴吧数: 16
Gribview分页加载数据出错 重复加载,加载完最后一条数据应该给 "没有更多数据了....";但运行程序,确是加载完最后一条数据之后再次从头开始加载数据 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://tieba.baidu.com/mo/q/checkurl?url=http%3A%2F%2F192.168.11.2%3A8080%2Fclass-activity-img-type.html%3FpageLines%3D4%26classId%3D&urlrefer=9191ea9654967bf2a128dec326ddccb2"+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(); } }
首页 2 3 4 5 6 7 下一页