Android 横屏页面跳转竖屏页面后手动返回后,竖屏页面来回切横竖屏
时间: 2023-05-26 14:03:27 浏览: 59
在 Android 开发中,横屏页面和竖屏页面需要分别设计,并且在页面跳转的时候,需要进行不同的处理。
如果您需要在横屏页面跳转到竖屏页面后手动返回,并且希望能够在竖屏页面进行横竖屏切换,可以按照以下步骤进行操作:
1. 在横屏页面中跳转到竖屏页面时,需要在 Intent 中添加以下代码:
intent.putExtra("isFromLandscape", true);
这样,当竖屏页面启动时就可以知道它是从横屏页面跳转过来的,并相应地进行处理。
2. 在竖屏页面的 onCreate 方法中进行如下操作:
// 判断是否从横屏页面跳转过来
if (getIntent().getBooleanExtra("isFromLandscape", false)) {
// 如果是从横屏页面跳转过来的,则强制设置为竖屏
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
3. 在竖屏页面的 onBackPressed 方法中进行如下操作:
@Override
public void onBackPressed() {
// 强制设置为横屏
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
这样,当用户在竖屏页面按下返回键时,页面会自动切换到横屏模式,并返回到横屏页面。
4. 接着,在横屏页面中,如果需要再次跳转到竖屏页面,需要先设置竖屏页面的屏幕方向为 SCREEN_ORIENTATION_SENSOR。
Intent intent = new Intent(LandscapeActivity.this, PortraitActivity.class);
intent.putExtra("isFromLandscape", true);
startActivity(intent);
PortraitActivity.this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
这样,在竖屏页面启动时,就可以根据设备的实际方向来确定页面的方向,并进行横竖屏切换。