java .lang.RuntimeException: setOnItemClickListener нельзя использовать со счетчиком - PullRequest
0 голосов
/ 28 апреля 2020
mSpinner.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                if (id == 2) {
                    showToast(getString(R.string.added_alert));
                    checkBoxAlarm.setEnabled(true);
                } else {
                    checkBoxAlarm.setEnabled(false);
                    checkBoxAlarm.setChecked(false);
                }
                if (id == 3) {
                    showToast(getString(R.string.notify));
                    checkboxnotify.setEnabled(true);
                } else {
                    checkboxnotify.setEnabled(false);
                    checkboxnotify.setChecked(false);
                }
            }

            public void onNothingSelected(AdapterView parent) {
            }
        });

Ответы [ 3 ]

1 голос
/ 28 апреля 2020

Вы можете увидеть в ошибке: setOnItemClickListener нельзя использовать

Использовать

setOnItemSelectedListener

вместо

setOnItemClickListener

Во-первых, вы должны изменить это. Тогда вы можете использовать положение .

0 голосов
/ 28 апреля 2020

Вы должны использовать OnItemSelectedListener https://developer.android.com/guide/topics/ui/controls/spinner#SelectListener

0 голосов
/ 28 апреля 2020

Вы должны использовать position вместо id, когда хотите сравнить положение выбранного элемента в счетчике.

mSpinner.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                if (position == 2) {
                    showToast(getString(R.string.added_alert));
                    checkBoxAlarm.setEnabled(true);
                } else {
                    checkBoxAlarm.setEnabled(false);
                    checkBoxAlarm.setChecked(false);
                }
                if (position == 3) {
                    showToast(getString(R.string.notify));
                    checkboxnotify.setEnabled(true);
                } else {
                    checkboxnotify.setEnabled(false);
                    checkboxnotify.setChecked(false);
                }
            }

            public void onNothingSelected(AdapterView parent) {
            }
        });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...