从 JSON 填充列表视图
有谁知道动态加载 Json 的任何示例 数据到 ListView 中,我见过的大多数例子只是使用 某种静态数组。我需要加载 10 行 Json数据,然后在底部有一个load more..来获取 接下来 10 个等等 请使用 Json 的示例......
Does anyone know of any examples to dynamically load Json
data into a ListView, most examples I have seen just use a
static array of some kind. I need to load say 10 rows of
Json data, then at the bottom have a load more.. to get the
next 10 etc etc.
Examples using Json please....
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
程序员布鲁斯是正确的,没有默认的方法可以做到这一点。然而,有一个非常干净和简单的方法来完成这个任务。这是我用来处理 JSONArray 的适配器。
Programmer Bruce is correct, there is no default way to do this. However, there is a very clean and simple way to get this accomplished. Here is the adapter I use to handle JSONArrays.
Android 没有现成的适配器来使用 JSON 数组填充
ListView
,就像使用数据库记录填充ListView
一样。我建议熟悉使用 JSON 数据填充您选择的 Java 数据结构,并熟悉使用
ListViews
,从不同的集合中使用不同的自定义行填充它们。下面是一个从 JSON 数组填充
List
的简单示例,然后使用List
填充ListView
。Android doesn't have a ready-made adapter to populate a
ListView
with a JSON array, like it does for populating aListView
with database records.I recommend getting comfortable with populating a Java data structure of your choice with the JSON data, and getting comfortable with working with
ListViews
, populating them from different collections, with different custom rows.Here's a simple example of populating a
List
from a JSON array, and then using theList
to populate aListView
.dbaugh 有一个很好的答案,但是这篇文章解释了如何为我们其他不知道去哪里的人使用它从那里开始。
dbaugh has a good answer, but this post explains how to use it for the rest of us who don't know where to go from there.
尝试以下操作:
JSON Parser 类:
显示 Listview 的片段类:
活动详细信息类:
希望这会有所帮助;)
Try the below:
JSON Parser class:
Fragment class showing Listview:
Activity details class:
Hope this helps ;)
我制作了一个像这样的简单 JSONAdapter:
然后当我需要它的特定实例时,我必须根据我的具体需要重写适配器中的 getView 方法:
并设置如下数据:
I made a simple JSONAdapter like this:
and then when I need a specific instance of it, I have to override the getView method in the adapter with my concrete need:
and set data like this: