屏幕方向更改后继续活动 - Android

Posted

技术标签:

【中文标题】屏幕方向更改后继续活动 - Android【英文标题】:Continue activity after screen orientation change - Android 【发布时间】:2011-08-26 03:57:19 【问题描述】:

我目前有一个可以播放音频文件的类,但是如果我将屏幕倾斜到水平或纵向,它就会重新启动。倾斜屏幕后,如何使我的应用程序从中断的地方继续?请注意,我不希望我的应用固定在纵向/横向位置。

Public void Play()
   AudioRenderer mr = new AudioRenderer();  
    mp = mr.AudioRenderer(filePath);
           

private class AudioRenderer extends Activity 
private MediaPlayer AudioRenderer(String filePath)     
    File location = new File(filePath);
Uri path = Uri.fromFile(location);
     mp= MediaPlayer.create(this, path);




return mp

非常感谢!!

【问题讨论】:

***.com/questions/456211/… 检查 savedInstanceState 和这个关键字是否有帮助 【参考方案1】:

您可以通过在 androidManifest.xml 文件中为您的活动设置一个属性来完成此操作。这告诉您的活动不要终止活动并在方向或键盘更改时再次调用 onCreate

<activity android:name="YourActivity" android:configChanges="orientation|keyboardHidden"/>

【讨论】:

您的意思是“并在方向或键盘更改时再次调用 onCreate”?顺便问一下,方向更改后会发生什么?! onCreate 和 onResume 调用?【参考方案2】:

您应该在 android 清单文件中的每个活动元素中添加以下行

 android:configChanges="orientation|keyboard|keyboardHidden" 

【讨论】:

以上是关于屏幕方向更改后继续活动 - Android的主要内容,如果未能解决你的问题,请参考以下文章

防止Android上的屏幕旋转

屏幕方向更改时导致 uri 变为 null 的相机活动

Android:暂时禁用活动中的方向更改

进度对话框和后台线程处于活动状态时如何处理屏幕方向更改?

进度对话框和后台线程处于活动状态时如何处理屏幕方向更改?

Android TabActivity 和动态 Tabs 屏幕方向问题