有两个Activity都设置了全屏显示, 分别为A(背景黑色),B(背景白色,上有SurfaceView全屏播放视频)
从A跳转到B播放完成后,再跳转到A,但播放完成后,始终会有几十毫秒的时间停留在B,即显示一下白色背景。我是在播放完成的回调中去 finish的。为了不显示一下B的白色背景,该如何让B消失?

解决方案 »

  1.   

    这个问题还是需要用Activity的生命周期解释:
    在Activity-B中执行finish()方法,会依次执行 onPause()—>onStop()—>onDestory()
    最开始执行onPause()方法,此时界面B 是慢慢被界面A 覆盖,直到完全覆盖后会执行onStop(),最后执行onDestory()。
    onPause()—>onStop()这个过程是非常短暂的,如果机器很卡,就会非常明显。
      

  2.   

    设置B界面不可见setVisibility(View.GONE),A界面设置可见setVisibility(View.VISIBLE)就可以了。