我有两项活动:一项VideoView
附加MediaPlayer
,另一项附加。{
我开始在第一个活动中观看视频,然后在播放期间我开始第二个活动
回到第一个活动后,我可以听到声音,但看不到图片。
我的视频布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<VideoView android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_weight="1"
android:id="@+id/videoView" android:layout_gravity="center" />
<ListView android:layout_width="fill_parent" android:layout_height="125dp"
android:id="@+id/ListView" />
</LinearLayout>
您有什么想法,为什么视频没有出现?
答案 0 :(得分:0)
可能与活动生命周期有关。你是否开始在onCreate()方法中播放你的视频?如果是这样,请尝试将其移动到onResume(),当活动发送到后台然后再次返回时,会调用它。 onCreate()只在第一次创建时被调用一次。
答案 1 :(得分:0)
最后,我最终得到了MediaPlayer
onStop
,它在onResume
方法中销毁,并在MediaPlayer
方法中重新创建。
这种方法的主要缺点是在更改方向后MediaPlayer
必须再次缓冲视频。
我认为主要原因是MediaPlayer
的引用丢失了。如果不参考SurfaceView
,我无法再将{{1}}设置为视频显示。