从下拉列表中选择第二个下拉列表中的选项

时间:2015-04-01 08:28:05

标签: java android eclipse

我是这个论坛的新手,真的希望有人可以帮助我,因为我在最近几天一直在无休止地搜索谷歌。

我正在编写一个应用程序,您可以选择一个位置,例如。杂货店,加油站,以及询问您是否可以用卡支付的方案 然后该场景被翻译成另一种语言。

我想要完成的是以下内容:

我想从下拉列表中选择一个位置,这反过来会在第二个下拉列表中为我提供选项。

示例:

SELECT grocery store FROM first drop down

第二个下拉列表必须填充您将在杂货店中使用的场景

SELECT petrol station FROM first drop down

第二次下拉必须填充您在加油站使用的方案。

如果需要,我会发布我的代码!

2 个答案:

答案 0 :(得分:0)

在您的第一个组合中附加一个选择侦听器,您将在其中填充第二个组合的选择选项。

答案 1 :(得分:0)

我终于做对了。

listPlaces = (Spinner)findViewById(R.id.spnPlaces);
    listScenarios = (Spinner)findViewById(R.id.spnScenario);
    String[] places = new String[] {"At the Supermarket","At the Petrol Station", "At The Spur"};       

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, places);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    listPlaces.setAdapter(adapter);

    listPlaces.setOnItemSelectedListener(new OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView<?> parent, View view,
                int position, long id) {
            // TODO Auto-generated method stub

            switch (position){
            case 0:{
                List <String> list = new ArrayList<String>();
                list.add("Tea");
                list.add("Coffee");
                list.add("Sugar");
                list.add("Milk");
                ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(Options.this, android.R.layout.simple_spinner_dropdown_item, list);
                dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                dataAdapter.notifyDataSetChanged();
                listScenarios.setAdapter(dataAdapter);
                break;
            }
            case 1:{
                List <String> list = new ArrayList<String>();
                list.add("Bread");
                list.add("Butter");
                list.add("Eggs");
                list.add("Bacon");
                ArrayAdapter<String> dataAdapter2 = new ArrayAdapter<String>(Options.this, android.R.layout.simple_spinner_dropdown_item, list);
                dataAdapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                dataAdapter2.notifyDataSetChanged();
                listScenarios.setAdapter(dataAdapter2);
                break;
                }
            }

        }