Как установить значение StringArray при нажатии на элемент массива в android? - PullRequest
1 голос
/ 03 марта 2020

Я работаю с android вертушкой. Здесь у меня есть два массива в моем XML, как показано ниже, и я показываю массив car в моем счетчике.

<string-array name="car">
    <item>128i Coupe</item>
    <item>M3 Coupe</item>
    <item>M5 Sedan</item>
</string-array>
<string-array name="value">
    <item>1</item>
    <item>0</item>
    <item>2</item>
</string-array>

Теперь я могу вызвать любой из них в моем Java файл, подобный этому

String[] BMW_Model = MainActivity.this.getResources().getStringArray(R.array.car);

Я могу получить / распечатать значение этого элемента при клике таким образом

String td = spinnerManufacture.getSelectedItem().toString();

Теперь мне нужно, когда я нажимаю на элемент моего car array Я должен отобразить значение моего второго value array в соответствии с положением. В качестве примера.

Если я нажму M5 Sedan из моего элемента прядильщика, он должен показать 2 в сообщении Toast из моего второго массива.

Любые предложения будут высоко оценены.

1 Ответ

1 голос
/ 03 марта 2020

Поскольку у вас есть совершенно разные массивы, решением вашей проблемы может быть определение положения нажатого элемента счетчика и получение значения второго массива по этому индексу.

int position = spinner.getSelectedItemPosition()

String[] valueArray = context.getResources().getStringArray(R.array.value);

Toast.makeText(context,  valueArray[position],Toast. LENGTH_SHORT).show(); 

Если вам нужно чтобы отобразить тост при клике, нужно установить clickListener

spinner.setOnItemSelectedListener(new
...