将列表添加到自定义适配器时出错 - Android



我有一个类,它为列表提供了 4 个参数。该类称为 Item。我创建了一个列表变量,它是一个数组列表。然后,我创建一个新的 ListAdapter。我将此适配器设置为主列表视图。然后,我将 10 个输入添加到 ArrayList 中。这一切都有效,但是当我尝试将 ArrayList 项添加到 ListAdapter 时,会给我一个错误,说要向该方法添加 Cast。

这是我正在谈论的代码

 final List <Item> tempList = new ArrayList <Item>();
     mainListViewListAdapter = new ListAdapter(MainActivity.this, R.layout.main_list_item_layout, tempList);
      // set mainListAdapter
      mainListView.setAdapter(mainListViewListAdapter);
      for (int x = 0; x < 10;x++){
          tempList.add (new Item ("Example1","Example2","Example3","Example4"));
        }
       ***HERE IS WHERE I GET THE ERROR AT addAll();***
      mainListViewListAdapter.addAll(tempList);

mainListViewListAdapter 设置为 ListAdapter,mainListView 设置为 ListView。

为什么要将强制转换添加到主列表视图列表适配器?我已经在另一个项目上运行了这段代码,我不必使用强制转换。

需要销毁适配器 - 每次使用后配置新的适配器和新适配器的值数组。

关于此结构的使用:

    String[] values1 = new String[] { "Sunny", "Sealand", "Lengord" };
    makeListItem(values1);
    public void makeListItem(String[] addValues){
MySimpleArrayAdapter lvAdapter1 = new MySimpleArrayAdapter(this, addValues);
ListView1.setAdapter(lvAdapter1);   lvAdapter1 = null;  }

最新更新