Android如何检索动态添加的微调器的值
我通过解析XML文件在应用程序中动态添加微调器 我已经使用了下面的代码Android如何检索动态添加的微调器的值,android,android-spinner,Android,Android Spinner,我通过解析XML文件在应用程序中动态添加微调器 我已经使用了下面的代码 List<Spinner> allspin = new ArrayList<Spinner>(); Spinner spin = new Spinner(getParent()); allspin.add(spin); spin.setLayoutParams(new LayoutParams( LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONT
List<Spinner> allspin = new ArrayList<Spinner>();
Spinner spin = new Spinner(getParent());
allspin.add(spin);
spin.setLayoutParams(new LayoutParams(
LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getParent(),
android.R.layout.simple_spinner_item, selectval);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spin.setAdapter(adapter);
List allspin=new ArrayList();
微调器旋转=新微调器(getParent());
allspin.add(spin);
spin.setLayoutParams(新的LayoutParams(
LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
ArrayAdapter=新的ArrayAdapter(getParent(),
android.R.layout.simple\u微调器\u项目,选择val);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
spin.setAdapter(适配器);
微调器显示正确,但我不知道如何检索选定微调器的值。如果有一个微调器我可以重设,但有多个微调器我该怎么办?如果需要多个微调器(我不确定我是否理解您的用例),那么在创建每个微调器时,还需要创建适当的侦听器。您不必自己检索微调器的值;应该在侦听器中处理这些选择事件。也许如果你解释一下你想做的更好一点,这会更容易帮助你……你可以动态设置微调器的id 为此,您可以使用
spin.setId(i); //if you use i of for loop for creating multipal spin at a tym or you can use a global variable i,incremented by one each time you create a spinner
此外,还可以使用这些ID从特定微调器获取值
例如:
for(int i=1;i<4;i++)
{
Spinner spin=new Spinner(getApplicationCotext());
spin.setId(i);
...
//other code
...
mLayout.add(spin);//add this spinner to your layout(mLayout is object of your layout in xml)
}
for(int i=1;i可以从arraylist中获取微调器的引用,如下所示:
Spinner spn = allspin.get(index);
之后,您只需调用以下命令即可获取所选项目:
spn.getSelectedItemPosition();
spn.getSelectedItemPosition();