Как получить идентификатор счетчика в методе onItemSelected? - PullRequest
0 голосов
/ 22 апреля 2019

Моя проблема: я хочу иметь 3 разных счетчика, которые отображают один и тот же тип объекта, и я хочу иметь возможность определить, с какого счетчика я получаю данные, например: в счетчике 1 выбран пользователь "Картофель "В счетчике 2 пользователь выбрал" помидор "В счетчике 3 пользователь выбрал" картофель фри "

Но я могу получить только" выбранный пользователем [...] ", так как я не знаюкак узнать, с какого счетчика я получил данные.

Мне было интересно, есть ли способ сделать это с помощью метода onItemSelected (родительский объект AdapterView, представление View, int position, long id)?

Ответы [ 2 ]

0 голосов
/ 22 апреля 2019

Возможно, вы установили общий приемник для всех счетчиков, поэтому вы можете определить, какой счетчик был выбран, проверив parent.getId():

@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
    switch (parent.getId()){
        case R.id.spinner1:
            //your code here
            break;
        case R.id.spinner2:
            //your code here
            break;
        case R.id.spinner3:
            //your code here
            break;
    }
}
0 голосов
/ 22 апреля 2019

Представление «Вид» - это, скорее всего, круг, который сделал выбор. Если вы установите .tag = 1 каждого счетчика на разные числа в начале вашей программы, то вы сможете посмотреть, какое значение тега передается методу onItemSelected:

if (view.tag == 1)...
...