微调器错误 "Spinner adapter view type count must be 1"

Spinner Error "Spinner adapter view type count must be 1"

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

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

ParseQueryAdapter 可能在底层使用 SpinnerAdapter。

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

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

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

我在使用 SpinnerAdapter 时遇到了同样的问题,并且使用 targetSdkVersion 19 使其在没有外围设备损坏的情况下正常工作。希望对您有所帮助!

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

一个。往下 targetSdkVersion 到 19

b。 (我的首选)使用以下代码扩展您的 parseadapter@override getViewTypeCount

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

这对我有用:)