Android:Spinner适配器视图类型计数必须为1

时间:2015-11-22 23:18:03

标签: android spinner adapter illegalargumentexception

您好我在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 ??

1 个答案:

答案 0 :(得分:3)

只需让getViewTypeCount返回1.

此方法允许您为不同的项目扩展不同的布局。它与getViewType()一起确保将正确类型的View传递给getView()作为convertView