使用启动画面启动应用程序但是当我 运行 它

starting an app with splash screen but when I run it

我收到此错误**“java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法 'void android.widget.ImageView.setAnimation(android.view.animation.Animation)'”****

public class MainActivity extends AppCompatActivity {
   
 private static int SPLASH_SCREEN = 5000;
    Animation topAnim,bottomAnim;
    ImageView image;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.activity_main);
    topAnim = AnimationUtils.loadAnimation(this, R.anim.top_animation);
    bottomAnim = AnimationUtils.loadAnimation(this, R.anim.bottom_animation);


    ImageView Logo = findViewById(R.id.Logo);
    TextView slogan = findViewById(R.id.slogan);

    image.setAnimation(topAnim);
    slogan.setAnimation(bottomAnim);
    new Handler().postDelayed(new Runnable() {
        @Override
        public void run() {
            Intent intent = new Intent(MainActivity.this,Dashboard.class);
            startActivity(intent);
            finish();
        }
    },SPLASH_SCREEN);
}

}

您没有将图片与您的 xml

匹配
image = findViewById(R.id.Logo);

而不是

ImageView Logo = findViewById(R.id.Logo);

你没有初始化image

你必须在setAnimation之前初始化imageimage

喜欢image = findViewById(R.id.your_responsable_image_id);

当你没有初始化视图并想访问它时,你会得到NullPointerException

变量image没有初始化!