如何使用ArrayAdapter将获取的json数据显示到listView中

时间:2018-08-10 13:46:36

标签: java android listview

我希望我的应用显示使用#select_1 { background: dodgerblue; }<select id="select_1" class="form-control" id="mySelect" name="mySelect"> <option> <option >Homes</option> <option >Entertainment</option> <option>Others</option> </option> </select>获取的书籍的标题。我不明白我在做什么错。当我运行应用程序并搜索书籍时,它不会更新GoogleBooks上的任何内容。在volley中,它完美地显示了书名。请帮助我在ListView中显示获取的数据。

这是我的主要xml文件

logcat

2 个答案:

答案 0 :(得分:0)

尝试此更改。

public class BooksAdapter extends ArrayAdapter<Book> {

Context context;
List<Book> data = null;

  public BooksAdapter(Context context, int resource,List<Book> data) {
    super(context, resource);
   this.context = context;
    this.data = data;
  }

当在定义适配器之后将数据存储到列表中并传递该列表并将绑定适配器绑定到listview之后时,也是如此。

答案 1 :(得分:0)

1。创建书籍列表,然后将列表传递给BaseAdapter。

    final ArrayList<Book> books=new ArrayList<>();
    booksAdapter=new BooksAdapter(this,-1, books);
    listView=(ListView)findViewById(R.id.listView);
    listView.setAdapter(booksAdapter);

2。更改应接受书单的基本适配器构造器。

public BooksAdapter(Context context, int resource, ArrayList<Book> books) {
    super(context, resource, books);
}

3。一旦收到来自服务器调用booksAdapter.notifyDataSetChanged()的数据 希望这能解决您的问题。