启动新 Activity 时保持 VideoView 的状态

Posted

技术标签:

【中文标题】启动新 Activity 时保持 VideoView 的状态【英文标题】:Keep state of VideoView while launching new Activity 【发布时间】:2015-10-21 10:27:01 【问题描述】:

我有一个 VideoView,当用户单击按钮时我会暂停(启动新 Activity),但是当用户按下并完成当前 Activity 时,我看到 VideoView 的黑屏(可能它的 Surface 被杀死)并且视频加载再次在 OnPrepareListener() 函数中(而用户之前暂停了视频)。

我不会重写 OnPause() 和 OnResume()。

如何保持 VideoView 的实例未附加或未销毁,以便当用户返回活动时,他将处于与离开该活动之前相同的 VideoView 状态?有可能吗?

【问题讨论】:

【参考方案1】:

我认为,您应该使用 startActivityForResult(.....) 来调用 new Activity 。 并使用

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) 
        super.onActivityResult(requestCode, resultCode, data);
    

在用户按下并完成当前活动时收听结果

【讨论】:

以上是关于启动新 Activity 时保持 VideoView 的状态的主要内容,如果未能解决你的问题,请参考以下文章

当一个新的activity启动时不会调用以下哪个方法

Activity-运行状态及生命周期

如何判断android的activity是不是运行

Android中Activity的4种状态

Activity的启动模式有哪几种,分别用于啥

启动新活动 Android 时出错