我开发了一个音乐播放器应用程序。我使用以下代码更改方向更改的布局,但应用程序重新启动,只有布局更改应用程序行为异常,并且不会连续运行。
itemNumber Price Mango Apple Bannana
112201 purchased need-to-plan purchased
112202 55 yet-to-buy yet-to-buy purchased
112202 67 need-to-plan purchased purchased
112203 456 need-to-plan need-to-plan need-to-plan
112203 33 need-to-plan yet-to-buy need-to-plan
112204 456 need-to-plan yet-to-buy need-to-plan
112204 yet-to-buy purchased need-to-plan
112205 77 yet-to-buy purchased need-to-plan
112205 99 yet-to-buy purchased yet-to-buy
112206 0 yet-to-buy purchased yet-to-buy
答案 0 :(得分:0)
如果您返回活动生命周期,则在旋转时,活动将被销毁,然后在设备旋转后重新创建。 MediaPlayer已发布,可停止播放。这导致MediaPlayer的不连续性。如果您在片段中托管MediaPlayer,则可以使用一项功能在配置更改中保持MediaPlayer实例的活动。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(saveInstanceState);
setRetainInstance(true);
}
此外,您不需要使用onConfigurationChanged来更改旋转布局。您可以在layout-land文件夹中放置具有完全相同名称的其他布局。这样,如果方向是横向模式,布局是纵向模式,系统将自动切换到layout-land文件夹上的布局。
有关其他信息,请访问developer.android.com: http://developer.android.com/training/basics/supporting-devices/screens.html