Android:Spinner处理从多个微调器到另一个微调器的选定项

时间:2013-12-16 10:01:33

标签: android android-spinner

我有一个值列表作为多个Spinner中的项目。我可以从微调器中选择那些数字;我怎样才能将这些值加到另一个微调器上?

这是我创建多个微调器的代码,

for (i = 0; i < 19; i++) {
    final Spinner s1 = new Spinner(this);               
    ArrayAdapter<CharSequence> adapter = ArrayAdapter
                    .createFromResource(this, R.array.score_array,
                            android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    s1.setAdapter(adapter);

    s1.setOnItemSelectedListener(new OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {                                               
            //  System.out.print(position +" Item index number "+ id );
            Toast.makeText(getBaseContext()," This part shows spinner number",
                            Toast.LENGTH_SHORT).show();                                         
        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {
            Toast.makeText(getBaseContext(), "part 3",
                            Toast.LENGTH_SHORT).show();
        }

    });
    GridLayout.LayoutParams param1 = new GridLayout.LayoutParams();
    param1.setGravity(Gravity.TOP);
    gridLayout.addView(s1);
    //s1.setBackgroundResource(R.drawable.border);

}
c1++;}

1 个答案:

答案 0 :(得分:0)

您可以在项目中定义String数组

String List1[]=new String[]{"a1","a2"};
String List2[]=new String[]{"b1","b2"};
String List3[]=new String[]{"c1","c2"};

在第一个适配器的单击侦听器上,您可以将此数组设置为相应的第二个微调器

spin1.setOnItemSelectedListener(new OnItemSelectedListener() 
{
    public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3)
    {
       switch (arg2)
       {
        case 0:
            ArrayAdapter<String> subAdapter1=new ArrayAdapter<String (MyActivity.this, android.R.layout.simple_list_item_1,List1);
        spin2.setAdapter(subAdapter1);
        break;

        case 1:
            ArrayAdapter<String> subAdapter2=new ArrayAdapter<String (MyActivity.this, android.R.layout.simple_list_item_1,List2);
        spin2.setAdapter(subAdapter2);
        break;

        case 2:
            ArrayAdapter<String> subAdapter3=new ArrayAdapter<String (MyActivity.this, android.R.layout.simple_list_item_1,List3);
        spin2.setAdapter(subAdapter3);
        break;

    default:
    break;
    }
    }

    public void onNothingSelected(AdapterView<?> arg0)
    {
    }
});
相关问题