У меня есть приложение, полностью работающее на Android 7 и ниже, но приложение упало при попытке установить его на устройство Android 8.1.0.
java .lang.RuntimeException : Невозможно запустить действие ComponentInfo {com.app.myapp / com.app.myapp.Activity.WelcomeActivity}: java .lang.NullPointerException: попытка вызвать виртуальный метод void android .widget.ImageView.startAnimation (android .view.animation.Animation) 'для ссылки на нулевой объект
Пример кода:
int id = R.id.logo;//1)
ImageView imageView = findViewById(id);//2)
Animation leftToRight = AnimationUtils.loadAnimation(WelcomeActivity.this,R.anim.slide_right_visible);
imageView.startAnimation(leftToRight); //3)
Я ставлю точку останова на 1) и перехожу "R.id .lo go "получил идентификатор представления. Шаг за шагом, imageView был "нулевым" после "findViewById (id)". Так что он потерпел крах при переходе к 3), потому что «imageView» является нулевым объектом.
Кажется, что есть проблема с доступом к ресурсу при назначении представления его идентификатором.
Is Есть ли способ решить эту проблему? Изменить уровень API? Gradle