como fazer spinner depende de outro spinner

Estou construindo um aplicativo simples para Android, que consiste em spinners e edittext. questão é que eu tenho 2 spinners com matrizes em um adaptador

Spinner 1

 ArrayAdapter adapter1 = ArrayAdapter.createFromResource(this,R.array.kendaraan_arrays,android.R.layout.simple_spinner_item);
    spKendaraan.setAdapter(adapter1);

o que eu quero é matrizes do spinner 2 é depende do que eu seleciono no spinner 1

Spinner 2

@Override
    public void onItemSelected (AdapterView < ? > adapterView, View view,int position, long id){
    if (spKendaraan.getSelectedItem().equals("Mobil")) {
        Toast.makeText(getApplicationContext(), "Mobil dipilih", Toast.LENGTH_SHORT).show();
        ArrayAdapter adapter2 = ArrayAdapter.createFromResource(this, R.array.pelanggaran_mobil, android.R.layout.simple_spinner_item);
        spPelanggaran.setAdapter(adapter2);
    } else {
        ArrayAdapter adapter2 = ArrayAdapter.createFromResource(this, R.array.pelanggaran_motor, android.R.layout.simple_spinner_item);
        spPelanggaran.setAdapter(adapter2);
    }
}

meu código acima não funciona, estou cometendo erros de lógica / método?

tl; dr

if spinnerA == x{
spinnerB = m
}
else {
spinnerB = n
}

desde que eu sou novo no android, qualquer exemplo seria muito apreciado, ted.

questionAnswers(2)

yourAnswerToTheQuestion