Java 微调器不是此SimpleCorsOrAdapter可以设置边界(sp)的视图

Java 微调器不是此SimpleCorsOrAdapter可以设置边界(sp)的视图,java,android,cursor,spinner,Java,Android,Cursor,Spinner,我试图将我的查询调整为微调器对象,但遇到了一些麻烦,我将错误列为标题。以下是它崩溃的代码部分: Spinner classDropDown = (Spinner) this.findViewById(R.id.classDropDown); int[] to = new int[] { R.id.classDropDown }; String[] classFields = new String[] { "className" };

我试图将我的查询调整为微调器对象,但遇到了一些麻烦,我将错误列为标题。以下是它崩溃的代码部分:

        Spinner classDropDown = (Spinner) this.findViewById(R.id.classDropDown);
        int[] to = new int[] { R.id.classDropDown };
        String[] classFields = new String[] { "className" };
        SimpleCursorAdapter cursorAdapter = new SimpleCursorAdapter(this, R.layout.main, cursor, classFields, to);
        cursorAdapter.setDropDownViewResource(R.id.classDropDown);
        classDropDown.setAdapter(cursorAdapter);
我有一个光标没有被填充的问题,但现在已经解决了。有人能帮我调试这个问题吗

编辑:我想我的问题是“to”字段。这应该是什么

编辑2:此外,以下是微调器对象的XML:

<Spinner
        android:id="@+id/classDropDown"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />


编辑3:我已修复了上述内容,以反映修复代码的效果。这就解决了这个特殊的问题。我没有收到错误,但微调器中也没有显示任何内容。

To是要将数据放入的资源id列表,例如R.id.textview1,它们需要包含在适配器中指定的布局中。元素的数量也应该与from数组(您称之为classfields)中的元素数量相匹配


因此,您有两个数据段,并且只指定了一个目标资源id。要么删除classfields数组中的一个字段,要么在布局中添加一个小部件并调用。它在to数组中应该可以工作。

Ok,那么光标必须返回与我猜的“from”和“to”字段中相同数量的字段?另外,您所说的适当的资源id是什么意思?最后,如果我只填充微调器,我将其用于“to”字段不是问题,是吗?或者我需要一些额外的文本字段吗?不,你可以在光标中返回任何你想要的额外内容。它必须有一个_id列,但您不必显示它,它只供框架使用。必须匹配的是from中的数字if datafields.in和to中的资源id.in的数字(当然,from.to中的数据dield需要在光标中)。