2

我正在尝试在我的应用程序中包含一些视频,但这些视频一次只能以一个方向工作。

我想根据传感器改变方向。

这是代码:

<activity
        android:name="com.example.siflte.PriyaActivity"
        android:launchMode="singleTop"
        android:screenOrientation="sensor"
        android:label="@string/app_name"
        android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
</activity>

我应用此代码,但是当我更改方向时,视频会关闭。

4

1 回答 1

0

我猜你知道当改变屏幕方向时,当前的活动被破坏并重新创建,从而失去了它的状态。有几个选项可以确保在屏幕定向后继续播放 MediaPlayer。

最简单的选择是android:configChanges="orientation"在 AndroidManifest 中声明。此属性将阻止活动重新启动。这可以为您提供所需的结果,但是,这被认为是一种不好的做法,并且根据文档,应避免使用此属性,并且仅将其用作最后的手段。

另一种选择是在发生方向更改时保存媒体播放器的光标位置,并在 onCreate() 中重新创建传递位置的 MediaPlayer 并从那里开始播放媒体播放器。

另一种选择是保存整个 MediaPlayer 对象并在屏幕定向后重新使用它。

看看这篇文章,它应该给你一个关于如何处理配置更改的起点:http: //developer.android.com/guide/topics/resources/runtime-changes.html

于 2013-05-07T08:16:56.290 回答