2013-04-28 58 views
0

我有三个微调器在一个活动中,我可以编辑用户已经输入到数据库中的信息。我可以通过查询我的SQLite数据库来设置文本字段的文本,以匹配用户可以编辑的内容。同样可以用微调来完成吗?根据名称设置选定的微调器项目,而不是在Android中的位置

例如,如果用户之前选择了2000年,那么在新的编辑活动中,我希望微调器在2000年已经被选中,然后他们可以根据需要更改它。

到目前为止,我只看到了基于整数位置设置旋钮的位置的选项。这可以通过提供一年来完成吗?谢谢你的帮助。

这里就是我目前的工作与我一个月微调:

ArrayList<String> list = new ArrayList(Arrays.asList(getResources().getStringArray(R.array.months))); 
int pos = list.get("March"); 
spinMonth.setSelection(pos); 

回答

4

所有你能做的就是确定该项目的位置在微调和调整微调的选择。

int pos=yourlist.indexOf("2000"); 

spinner.setSelection(pos); 

编辑:

ArrayList<String> list=new ArrayList(Arrays.asList(getResources().getStringArray(R.array.years))); // your array id of string resource 
int pos= list.indexOf("2000"); 
spinner.setSelection(pos); 
+0

这是沿着正确的线,我感谢您的答复! – colmulhall 2013-04-28 15:59:12

+0

@colmulhall我已经根据上面的评论编辑我的答案,使用该代码 – Pragnani 2013-04-28 16:13:14

+0

我的一个spinners使用来自strings.xml的数组来填充。下面的代码不适用于我:ArrayList list = new ArrayList(Arrays.asList(getResources()。getStringArray(R.array.months))); int pos = list.get(“March”); spinMonth.setSelection(pos); – colmulhall 2013-04-28 16:31:01

0

我不得不这样做完全一样的事情的一周。这是我的方法。

String userName = dataCursor.getString(dataCursor.getColumnIndex("USER_NAME")); 
int position = listOfUsers.indexOf(userName); 
userSpinner.setSelection(position); 

其中listOfUsers是我用通俗的微调,userSpinner名单。希望有所帮助!

+0

感谢这接近我正在寻找。我用我的strings.xml文件中的数组填充我的微调器。你知道如何在你的例子中使用“listOfUsers”来使用它吗?谢谢! – colmulhall 2013-04-28 16:04:37

0

简单的一行代码是

spinMonth.setSelection(Arrays.asList(getResources().getStringArray(R.array.months)).indexOf("March")); 
相关问题