如何在按钮单击时从每个动态微调器获取所有选定值

时间:2016-02-26 08:48:47

标签: android android-spinner

我已经在动态布局中创建了带有值的动态微调器。按钮点击将显示微调器。

如果我显示了多个微调器,那么如何从所有微调器中获取选定的值。

preview

代码:     公共类MainActivity扩展Activity {     String [] itemlist = {" Select Item"," Apple"," Mango"," Grapes"};     int [] itemrate = {0,10,8,6};     Spinner ItemSpinner;     按钮btnPlus,btnMinus;     int i = 1;     LinearLayout主要;     列表row_list = new ArrayList();     列表qty_list = new ArrayList();     TextView txt_nettotal,txt_qty;

public static void main(String[] args)

4 个答案:

答案 0 :(得分:1)

您可以使用yourdynamicelayout.getChildCount()和yourdynamicelayout.getChildAt()从动态布局中获取微调器值。我认为你的微调器位置为零。用于从零到getChildCount的循环。 getChild为零,将其转换为spinner视图&获取所选值

//更新了答案

您可以通过两种方式实现微调器的选定值

1)维护一个微调器的arrayList。 &安培;从中获取选定值

2)Psuedo代码。

//如果我没有注意到,你正在使用mainlayout添加Gridlayout&在网格中有一个线性布局&里面有锭床工人

for(int i=0;i<main.getChildCount();i++){
GridLayout tempGrid=(Gridlayout)main.getChildAt(i);
LinearLayout templinear=(LinearLayout) tempGrid.getChildAt(0);
Spinner tempSpnr=(Spinner) tempLinear.getChildAt(0);
String value=tempSpnr.getselecteditem().tostring();

}

//它是一个伪代码,根据您的要求进行更改&amp;代码

希望它的作品

答案 1 :(得分:1)

您可以在列表中添加微调器

    List<Spinner> list=new ArrayList<>();

//and getting all spinner selected value

       for(int i=0;i<list.size();i++)
        {
            list.get(i).getSelectedItemPosition()
        }

答案 2 :(得分:0)

添加新的微调按钮 - 如何添加?如果要将新项添加到列表中并在适配器中显示列表,则可以使用for循环遍历列表并在每个微调器中获取所选项。

答案 3 :(得分:0)

你有

  

getSelectedItem()

     

getSelectedItemPosition()

     

getSelectedItemId()

EX:String text = spinner.getSelectedItem().toString();

按钮点击事件:

buttonClick.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

            //TO GET POSITION
                    int spinnerValue1 = customerSpinner.getSelectedItemPosition();
                    int spinnerValue2 = employeeSpinner.getSelectedItemPosition();
                    int spinnerValue3 = productSpinner.getSelectedItemPosition();
            //TO GET VALUE
                    String spinnerValue3 = (String) productSpinner.getSelectedItem();
            }
        });