我将从服务器获取500条记录..我希望在一个列表视图中显示10个项目,当列表视图到达末尾时,我需要加载另外10个,以此类推..
我在网上看到了很多例子,但是我无法解决它
请帮助我。
这是我的代码:
这是我的代码:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.form);
Seen = (ImageView) findViewById(R.id.SeenStatus);
new GetDescendingDate().execute();
userArray = new ArrayList<listmodel>();
ListView lv = getListView();
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// getting values from selected ListItem
String Id = ((TextView) view.findViewById(R.id.txtId))
.getText().toString();
// Starting single activity
Intent in = new Intent(getApplicationContext(),
details.class);
in.putExtra("TAG_Id", Id);
startActivity(in);
});
}
}
private class GetDescendingDate extends AsyncTask<Void, Void, Void> {
@Override
protected void onPreExecute() {
super.onPreExecute();
// Showing progress dialog
pDialog = new ProgressDialog(Atab.this);
pDialog.setMessage("Loading...");
pDialog.setCancelable(false);
pDialog.show();
}
@TargetApi(Build.VERSION_CODES.GINGERBREAD)
@Override
protected Void doInBackground(Void... arg0) {
JSONParser jParser = new JSONParser();
// Getting JSON Array node
JSONArray json;
session = new SessionManager(getApplicationContext());
session.checkLogin();
HashMap<String, String> user = session.getUserDetails();
String email = user.get(SessionManager.KEY_EMAIL);
String Status = "New";
String get;
get = URL.Get;
String url_new = get + email + "/" + Status + "/" + "SODD"
+ "/" + "null" + "/" + "0" + "/" + "10";
try {
json = jParser.getJSONFromUrl(url_new);
if (json != null) {
// looping through All Orders
for (int i = 0; i < json.length(); i++) {
try {
JSONObject c = json.getJSONObject(i);
String number = c.getString("No");
String By = c.getString("By");
String Type = c.getString("Type");
String Descripton = c.getString("Desc");
String Date = c.getString("DateTime");
String Id = c.getString("Id");
String ONo = c.getString("ONo");
String FirstName = c .getString("FirstName");
String Price = c.getString("Price");
listmodel list = new listmodel();
list.setId(Id);
list.setBy(By);
list.setType(Type);
list.setDescription(Descripton);
list.setDate(Date);
list.setPrice(Price);
list.setName(FirstName);
userArray.add(list);
} catch (JSONException e) {
e.printStackTrace();
}
}
}
else {
Log.e("New", "Couldn't get any data from the url");
}
} catch (JSONException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
return null;
}
protected void onPostExecute(Void result) {
super.onPostExecute(result);
if (pDialog.isShowing())
pDialog.dismiss();
adapter = new adapter(Atab.this,userArray);
setListAdapter(adapter);
}
}