Spinner错误" Spinner适配器视图类型计数必须为1"

时间:2015-02-04 18:22:27

标签: android parse-platform spinner illegalargumentexception android-parsequeryadapter

我在我的应用程序中使用Parse.com,当我在片段中使用ParseQueryAdapter来检索数据并将错误传递给微调器时

java.lang.IllegalArgumentException: Spinner adapter view type count must be 1

并停止申请。但是,如果我尝试使用ArrayAdapter,它可以工作。可能是什么问题?

ParseQueryAdapter代码:

ParseQueryAdapter.QueryFactory<ParseObject> spnQuery=
            new ParseQueryAdapter.QueryFactory<ParseObject>() {
                public ParseQuery create() {
                    ParseQuery query = new ParseQuery(tableName);
                    return query;
                }
            };
    ParseQueryAdapter<ParseObject> adapter = new ParseQueryAdapter<ParseObject>(getActivity().getApplicationContext(), spnQuery);
    adapter.setTextKey(columnName);
    spnLecture.setAdapter(adapter);

2 个答案:

答案 0 :(得分:7)

我刚刚解决了同样的问题,你有两种可能的解决方案:

一个。向下targetSdkVersion到19

湾(我的首选)使用此代码扩展您的parseadapter @override getViewTypeCount

@Override
public int getViewTypeCount() {
     return 1;
}

这对我有用:)

答案 1 :(得分:3)

ParseQueryAdapter可能正在使用SpinnerAdapter。

解决此问题的一种方法是降低targetSdkVersion。 报告的目标是21的targetSdkVersion。

请参见此处:https://code.google.com/p/android/issues/detail?id=79011

长期解决方案是修复适配器的实现,这在Parse团队决定修复之前是不可能的。

SpinnerAdapter遇到了同样的问题,并使用targetSdkVersion让它在没有外围损伤的情况下工作。希望它有所帮助!