Заполнение счетчика из другого счетчика в зависимости от состояния - PullRequest
3 голосов
/ 27 февраля 2012

Что мне нужно сделать, так это, если выбран определенный элемент из счетчика 1, он должен отображать определенный массив из счетчика 01 например если выбран один элемент вращения - красный счетчик 01, необходимо отобразить level_array, так как в раскрывающихся опциях для счетчика 01 еще отображается cparklevel. по сути, я пытаюсь показать, сколько уровней имеет каждая автостоянка. поэтому счетчик 1 содержит названия парковок, а счетчик 01 содержит уровни

    Spinner spinner = (Spinner) findViewById(R.id.spinner1);
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
            this, R.array.cparkColour_array, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner.setAdapter(adapter);

    Spinner spinner2 = (Spinner) findViewById(R.id.Spinner01);

    if(spinner.getSelectedItem().equals("Red")){


    ArrayAdapter<CharSequence> adapter1 = ArrayAdapter.createFromResource(
            this, R.array.level_array, android.R.layout.simple_spinner_item);
    adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner2.setAdapter(adapter1);
    }

    else {

    ArrayAdapter<CharSequence> adapter2 = ArrayAdapter.createFromResource(
            this, R.array.cparkLevel_array, android.R.layout.simple_spinner_item);
    adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner2.setAdapter(adapter2);
    }
}

любая помощь будет оценена

1 Ответ

4 голосов
/ 27 февраля 2012

Сделай как:

spinner_1.setOnItemSelectedListener(new OnItemSelectedListener() {

            @Override
            public void onItemSelected(AdapterView<?> arg0, View arg1,
                    int position, long arg3) {

                            if(spinner_1.getSelectedItem().equals("Red")){
                            {
                                  // set adapter to spinner_2 here for "Red" selected
                            }
                            else
                            {
                                 // set adapter to spinner_2 for "Red" not selected
                            }
            }    
            @Override
            public void onNothingSelected(AdapterView<?> arg0) {                
            }
});
...