Member 13800007 Ответов: 1

Как заставить 3 блесны изменить свое значение при выборе одной из них?


Я сделал 3 блесны, и то, что я хочу, это когда пользователь выбирает spinner 1, spinner 2 и 3 изменяют свое значение соответственно spinner 1.

У меня есть одна маленькая проблема. Я сделал, когда значение spinner 1 изменяется, spinner 2 тоже меняется, но мой третий spinner не изменит значения

КОД:

  Spinner grad,skola,zanimanje;

String gradovi[]={"Banja Luka","Bijeljina"};
String blskola[]={"JU Gimnazija","Zastiti Me","Skola 3"};
String blsmjer[]={"Opšti","MUZAFFARPUR","GAYA"};
String bijeljinaskole[]={"Skola 1","Skola 2","Skola 3"};
String bijeljinasmjer[]={"Smjer 1 Bijeljina","Smjer 2","Smjer 3"};



@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_pocetni);

    grad = (Spinner) findViewById(R.id.spinnergrad);
    skola = (Spinner) findViewById(R.id.spinnerskola);
    zanimanje = (Spinner) findViewById(R.id.spinnerzanimanje);

    final ArrayAdapter<String> gradovispinner = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, gradovi);

    final ArrayAdapter<String> banjalukaskola = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, blskola);

    final ArrayAdapter<String> banjalukasmjer = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, blsmjer);

    final ArrayAdapter<String> bijeljinas = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, bijeljinaskole);

    final ArrayAdapter<String> bijeljinasmj = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, bijeljinasmjer);


    gradovispinner.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    grad.setAdapter(gradovispinner);
    skola.setAdapter(banjalukaskola);



    grad.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {

            switch (parent.getId()) {
                case R.id.spinnergrad: {
                    if (gradovi[position].equals("Banja Luka")) {


                        banjalukaskola.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                        skola.setAdapter(banjalukaskola);

                        banjalukasmjer.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                        zanimanje.setAdapter(banjalukasmjer);


                    }
                    else if(gradovi[position].equals("Bijeljina")){

                        bijeljinas.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                        skola.setAdapter(bijeljinas);

                    }

                }

            }

        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {

        }
    });
}


Что я уже пробовал:

Там наверху все зашифровано

1 Ответов

Рейтинг:
4

David Crow

Ваш if() заявление, вероятно, должно быть:

if (gradovi[position].equals("Banja Luka"))
{
    banjalukaskola.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    skola.setAdapter(banjalukaskola);

    banjalukasmjer.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    zanimanje.setAdapter(banjalukasmjer);
}
else if(gradovi[position].equals("Bijeljina"))
{
    bijeljinas.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    skola.setAdapter(bijeljinas);

    bijeljinasmj.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    zanimanje.setAdapter(bijeljinasmj);
}


Извините за плохое форматирование. Теги <pre> не будут хорошо играть с этими длинными утверждениями.


Member 13800007

Большое спасибо,это было так просто, о, Я так глупа