【发布时间】:2019-04-16 14:28:20
【问题描述】:
我的数据库中有 3 条记录,但只有一条显示。不知道如何解决这个问题,我尝试了一切。帮助
public void onResponse(JSONArray response) {
JSONObject jo;
Teacher teacher;
try {
for (int i = 0; i < response.length(); i++) {
JSONArray innerJsonArray = response.getJSONArray(i);
jo = innerJsonArray.getJSONObject(i);
int id = jo.getInt("id");
String name = jo.getString("teacher_name");
String description = jo.getString("teacher_description");
String imageUrl = jo.getString("teacher_image_url");
teacher = new Teacher(name, description, PHP_MYSQL_SITE_URL+imageUrl);
teachers.add(teacher);
te.setText(Integer.toString(response.length()));
}
//SET SPINNER
adapter = new ListViewAdapter(c, teachers);
gv.setAdapter(adapter);
【问题讨论】:
-
错误表示您正在尝试访问超出数组大小范围的值,您可以发布完整的 logcat 错误吗?
-
应该有 2 个 for 循环,一个用于 'JSONArray innerJsonArray = response.getJSONArray(i);'第二个是'JSONArray innerJsonArray = response.getJSONArray(j);'遍历innerJsonArray
-
你能发布你试图解析的 JSON 吗?
-
当我检查 responce.leght() 它告诉我它的 1。似乎我只得到 1 条记录,但是当我在网络上运行 php 时它给了我所有 3 个文件