我在我的应用程序中使用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);
答案 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让它在没有外围损伤的情况下工作。希望它有所帮助!