【发布时间】:2015-12-13 03:57:14
【问题描述】:
我正在开发一个从 MySQL 数据库中获取数据的小型应用程序。假设如果数据库中有大约 100 个条目,并且我只想获取前 10 个条目,并且只有当用户单击加载或显示更多时,接下来的 10 个条目必须加载到同一个列表视图中。 我正在使用 json 解析器来解析获取的数据,并且将使用 php 从表中的所有数据创建 json 对象。我可以将 json 解析器的 for 循环限制为仅解析前 10 个对象,但我不知道如何完成上述功能。
使用的json解析器是。
private void parseJsonFeed(JSONObject response) {
try {
JSONArray feedArray = response.getJSONArray("feed");
for (int i = 0; i < feedArray.length(); i++) {
JSONObject feedObj = (JSONObject) feedArray.get(i);
FeedItem item = new FeedItem();
item.setId(feedObj.getInt("id"));
item.setName(feedObj.getString("name"));
// Image might be null sometimes
String image = feedObj.isNull("image") ? null : feedObj
.getString("image");
item.setImge(image);
item.setStatus(feedObj.getString("status"));
item.setProfilePic(feedObj.getString("profilePic"));
item.setTimeStamp(feedObj.getString("timeStamp"));
// url might be null sometimes
String feedUrl = feedObj.isNull("url") ? null : feedObj
.getString("url");
item.setUrl(feedUrl);
feedItems.add(item);
}
// notify data changes to list adapater
listAdapter.notifyDataSetChanged();
} catch (JSONException e) {
e.printStackTrace();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
xml 布局只是一个简单的列表视图,它被自定义适配器膨胀。 我应该在哪里放置加载更多按钮,使其成为第 11 项,或者该按钮应显示在前 10 个列表项之后。
谢谢。
【问题讨论】:
标签: php android mysql json listview