android - 如何防止轮屏时系统调用oncreate方法?

标签 android rotation oncreate

嗨 stackoverflow 的 friend 们。我有一个播放器音乐,我调用 oncreate playSong(id)(id 是一个数组的索引,该数组的索引中有一个路径音乐。但是存在这个问题,当旋转屏幕时,歌曲从第一个索引开始一遍又一遍地播放在数组中。我猜是因为每次事件轮换后都会调用 oncreate 方法。另外我希望我的应用程序防止轮换,因为这个事件可能对其他 Activity 有不良影响。 我该如何解决这些类型的问题?

最佳答案

你可以使用

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

锁定方向。因为正如您提到的,每次屏幕旋转时都会调用 onCreate

但是你必须在 setContentView(R.layout.main) 之前调用它 可能看起来像这样:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
    setContentView(R.layout.main); 
}

关于android - 如何防止轮屏时系统调用oncreate方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21140543/

相关文章:

java - 最流行的 Android 主机操作系统是什么?

android - 在android中根据周围的光线改变亮度

android - 访问函数外部的全局值

android - 如何仅在应用程序首次启动时启动具有特定 Activity 的应用程序?

android - 如何在 Kivy 中检测 Android 上的屏幕旋转?

android - ViewPager 中的 fragment 返回空对象 onResume

android - 使用 Jsoup Android 将数据发送到服务器

android - 如何使用包名称获取应用程序类别

3d - 如何有效地旋转和平移 3D 平面

JQuery UI 旋转选项卡和事件