Я новичок в разработке Android и надеюсь, что вы мне поможете. У меня есть один RecyclerView, с каждым просмотром карты, показывающим одно изображение, два просмотра текста и одну кнопку переключения. Это приложение для меня, и я хотел организовать сбор своих карточек таким образом, чтобы у меня была возможность сообщить мне, есть ли у меня карточка или нет, поэтому я хотел обновить базу данных с 1, если она отмечена, или с 0, если онане. Я пытался проверить кнопки с тостом, но я получаю сообщение об ошибке. Вот код:
aSwitch = (Switch) findViewById(R.id.switch1);
aSwitch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked == true) {
Toast.makeText(StockActivity.this, "On", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(StockActivity.this, "Off", Toast.LENGTH_SHORT).show();
}
}
});
Это мой код для кнопки переключения, я думал, что это нормально, но я получил ошибку:
java.lang.RuntimeException: Невозможноначать действие ComponentInfo {com.example.battlespiritsdb / com.example.battlespiritsdb.StockActivity}: java.lang.NullPointerException: попытка вызвать виртуальный метод void android.widget.Switch.setOnCheckedChangeListener (android.wid) (android.w). нулевая ссылка на объект
Ошибка указывает на первую строку setOnCheckedChangeListener, и я не знаю почему, это потому, что я использую их в RecyclerView или что-то в этом роде?
Спасибоза помощь!
PS: Это отлично работает, я только что понял, что использую его в неправильном классе, поэтому, как говорили некоторые из вас, кнопка переключателя продолжала указывать на нулевой объект. Спасибо за помощь! Когда-нибудь я перестану делать эти ошибки новичка, я думаю ...