Android onStop () вызывается поздно, пока идет анимация в заднем стеке - PullRequest
0 голосов
/ 21 января 2019

Android onStop () не вызывается слишком поздно после завершения занятия B. + Он отлично работает под Android 7.0 Nougat.

Если анимация запускается из onResume и отменяется из onPause, она работает нормально.Но мне интересно, почему.

Журнал ниже

Activity B : onPause
Activity A : onStart
Activity A : onResume
... after 10 seconds ...
Activity B : onStop
Activity B : onDestroy

Задание A : запуск анимации

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    final ImageView imageview = (ImageView) findViewById(R.id.imageview);
    final Animation anim = AnimationUtils.loadAnimation(MainActivity.this, R.anim.animation);
    imageview.setAnimation(anim);
    anim.start();

    // startActivity after about 10 seconds
    startActivity(new Intent(this, ActivityB.class);
}

Активность B : onStop вызывается примерно через 10 секунд после вызова onPause.

protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);

        Button button = (Button) findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                finish();
            }
        });
    }
...