NoSuch方法与适配器中的addAll?

我有一个ArrayAdapter的子类声明像这样

public class ShoppingCartAdapter extends ArrayAdapter<ShoppingCart> { 

一切工作正常。 现在突然(?)我在运行2.3.6的Nexus S或2.2投掷的模拟器上遇到了这个问题

 12-19 14:33:36.136: ERROR/AndroidRuntime(27326): FATAL EXCEPTION: main java.lang.NoSuchMethodError: com.somewhere.mobile.fragment.ShoppingCartListFragment$ShoppingCartAdapter.addAll 

然而,它仍然适用于例如我的Xoom 3.2。

我不重写超级addAll方法,因为它在一些设备上工作,我不知道下一步看什么。 任何提示?

更新:

我用adapterreplace了adapter.addAll(newCarts)

 for (ShoppingCart cart : newCarts) { adapter.add(cart); } 

这是有效的。 我认为这与generics有关,但一直未能确定。

Solutions Collecting From Web of "NoSuch方法与适配器中的addAll?"

 addAll(...) 

已经从API 11(Android 3.0)开始添加。 这里的文档。

addAll(…)在较低的API级别不可用。 它添加在API 11及以上。 所以使用add(…)来解决这个问题如下

  for (int i = 0; i < contents.size(); i++) { adapter.add(contents.get(i)); } 

代替

  //adapter.addAll(contents); //do not use addAll(...)