9

我准备了一个表格,我必须在其中使用同一页面来添加详细信息和编辑详细信息。添加详细信息时,所有字段都将为空白,并且微调器选择将设置为“无选择”。现在我想设置我将从上一个活动中传递的项目的微调器选择。如何做到这一点?由于微调器没有任何方法,例如setSelection(String string); 或者有没有其他方法,我可以实现这个机制......

有没有人可以帮帮我...

4

2 回答 2

17

这就是我所做的,它似乎工作正常

Spinner my_spinner=(Spinner)findViewById(R.id.spn_items);
ArrayAdapter<String> array_spinner=(ArrayAdapter<String>)my_spinner.getAdapter();
    my_spinner.setSelection(array_spinner.getPosition("list item"));
于 2013-12-03T06:59:45.987 回答
12

我现在不知道这可能使用的频率,但我们可以通过其中的文本设置微调器的选择。Spinner 有方法setSelection(int position); .

现在在参数中我们需要传递文本的位置,我们可以从我们用来绑定到适配器的array_list中获取它,getIndexOf(Object object)对象应该ArrayList是声明的类型例如,如果ArrayList是字符串类型,则对象要传递给的getIndexOf(Object object)应该是字符串类型。

最后,您将选择设置如下:

spinner.setSelection ( spinner_array_list.indexOf(string) );
于 2013-03-28T07:28:20.683 回答