您好我在Android 5.1模拟器中运行应用时遇到了麻烦。我有一个包含Spinner的屏幕。这个Spinner在运行android 4.0+的手机上工作正常。我收到了这样的错误:
java.lang.IllegalArgumentException:Spinner适配器视图类型count必须为1 在android.widget.Spinner.setAdapter(Spinner.java:439)
我已经覆盖了这样的方法:
@Override
public int getItemViewType(int position) {
return 0;
}
@Override
public int getViewTypeCount() {
if (hasTitle())
return _models.length+1;
else
return _models.length;
}
我知道调试时_models.length大于0。调试期间GetItemViewType不会被命中。
主要问题是我有两个有两个微调器的屏幕。第一个屏幕在使用上面的代码后工作,但第二个屏幕没有那么幸运。
有没有人知道为什么错误会出现,即使我的_models确实有值。
抱歉,我可能错过了阅读错误..必须是1 ...但为什么必须是1 ??
答案 0 :(得分:3)
只需让getViewTypeCount返回1.
此方法允许您为不同的项目扩展不同的布局。它与getViewType()一起确保将正确类型的View传递给getView()作为convertView