3

I am using Parse.com in my application when I use ParseQueryAdapter in fragment to retrieve data and pass to a spinner an error as

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

and application stops. However if I try ArrayAdapter it works. What could be the problem?

ParseQueryAdapter Code:

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);
4

2 回答 2

7

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

一个。下降targetSdkVersion到 19

湾。(我的首选)使用以下代码扩展您的parseadapter和:@overridegetViewTypeCount

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

这对我有用:)

于 2015-03-13T21:04:03.567 回答
3

ParseQueryAdapter 可能在下面使用 SpinnerAdapter。

解决此问题的一种方法是降低 targetSdkVersion。针对 21 的 targetSdkVersion 报告此错误。

请看这里:https ://code.google.com/p/android/issues/detail?id=79011

一个长期的解决方案是修复适配器的实现,在 Parse 团队决定修复它之前,这对于您的情况是不可能的。

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

于 2015-02-15T00:21:32.403 回答