Slide Over:是什么,iPad 浮动窗口

作者: IT Sectr 发布日期: 2026-06-09 阅读时间: 8 分钟

Slide Over 是 iPad 上的一种多任务模式,其中第二个应用程序显示在主应用程序上方的浮动窗口中。该窗口大约占据屏幕宽度的四分之一,可以向左或向右移动,并通过滑动隐藏。根据 Apple Human Interface Guidelines (2025),Slide Over 自 iOS 9 起在所有 iPad 型号上可用,并且是 iPadOS 多任务处理系统的一部分。

要点

  • Slide Over — iPad 上主应用程序上方第二个应用程序的浮动窗口。
  • 25% 宽度 — Slide Over 窗口大约占据屏幕的四分之一。
  • 访问 — 从屏幕右边缘滑动或通过 Dock 打开。
  • 灵活性 — 窗口可以移动、隐藏并转换为 Split View。
  • 适配 — Slide Over 中的应用程序获得 Size Class Compact Width。

什么是 Slide Over?

Slide Over 是 iPad 独有的多任务模式,在狭窄的浮动窗口中显示第二个应用程序。与 Split View 将屏幕分成两个相等部分不同,Slide Over 位于主界面之上,允许用户快速访问参考资料、即时通讯应用或播放器。

该模式随 iOS 9 与 Split View 一起引入,最初仅支持 iPad Air 2、iPad mini 4 和 iPad Pro。如今,Slide Over 可在所有 iPad 型号上使用,包括第 10 代 iPad 和 iPad mini (A17 Pro)。对于开发者来说,Slide Over 意味着应用程序可以在 320 pt 宽的窗口中显示 — 紧凑的 Size Class

用户通过从屏幕右边缘滑动或将 Dock 中的图标拖到屏幕右侧来打开 Slide Over。在 Slide Over 窗口中可以启动任何应用程序 — 不需要特殊支持,尽管适配后的应用程序看起来好得多。

Slide Over 在 iPad 上如何工作

Slide Over 作为主窗口上方的独立 UIWindowScene 实现。Slide Over 中的每个应用程序都获得自己的 UIWindowScene 实例,宽度为 320 pt(竖屏方向)。用户在 Slide Over 中可以有一个应用程序 — 启动的第二个应用程序替换第一个。

Slide Over 窗口可以通过拖动窗口顶部的特殊手柄(pill)来移动。如果将窗口拖到左边缘 — 它会固定在左侧。如果将窗口完全向右滑动 — 它会折叠成一个不可见的面板,并通过从右边缘滑动激活。系统会记住最后在 Slide Over 中启动的应用程序。

关键特性 — Slide Over 可以转换为 Split View。如果用户将 Slide Over 窗口拖到上边缘或下边缘,模式会切换为 Split View。两个应用程序都会获得完整的屏幕分割,份额相等。

Slide Over 与 Split View 的区别

主要区别在于屏幕空间的分配。Split View 将屏幕分成两个相等或成比例的部分,每个应用程序获得固定区域。Slide Over 不占用主应用程序的空间 — 它保持全屏,而 Slide Over 显示在其上方。

第二个区别 — 焦点。在 Split View 中,两个应用程序同时处于活动状态且可见。在 Slide Over 中,主应用程序失去焦点(收到 onResignActive),而 Slide Over 获得焦点和交互性。当 Slide Over 被隐藏时,焦点返回到主应用程序。

第三个区别 — 场景数量。Split View 要求开发者支持多种宽度。Slide Over 始终具有 320 pt 的宽度 — 恒定的紧凑类。这简化了开发:一个针对此尺寸的自适应布局就足够了。

特性Slide OverSplit View
窗口大小320 pt(固定宽度)50%、25% 或 75% 屏幕
位置在主应用程序上方并排,屏幕分割
焦点仅 Slide Over 活动两个应用程序都可以活动
Size ClassCompact Width, Regular Height取决于比例

为 Slide Over 适配应用程序

为了在 Slide Over 中正常运行,应用程序必须支持 Size Class Compact Width。这意味着界面必须适应 320 pt 的宽度。Apple 的主要建议:使用带有自适应约束的 Auto Layout,避免固定宽度,在 iPad 模拟器中使用 Slide Over 测试所有屏幕。

在实践中,适配归结为使用 UIStackView 或带有 VStack/HStack 的 SwiftUI,它们会自动适应可用空间。应用程序中的表格(UITableView)和集合(UICollectionView)如果其单元格使用自调整大小(self-sizing cells),则可以正常工作。

对于 UIKit,使用带有 horizontalSizeClass 检查的 UITraitCollection。如果类等于 .compact — 将界面切换到简化版本:移除多余的列,用 StackView 替换 Sidebar。SwiftUI 通过 @Environment(\.horizontalSizeClass) 自动完成此操作。

Slide Over 中的应用程序生命周期

当应用程序在 Slide Over 中打开时,其 UIScene 会收到 sceneWillEnterForeground 通知。之后,场景进入 foreground active 状态 — 就像在全屏启动时一样。全屏模式和 Slide Over 之间的生命周期没有区别:sceneWillEnterForeground 和 sceneDidBecomeActive。

当从 Slide Over 返回到全屏模式或隐藏窗口时,场景会收到 sceneDidEnterBackground。如果用户向右滑动 Slide Over(隐藏),应用程序将继续在后台运行,直到另一个 Slide Over 应用程序替换它或系统释放内存。

对于依赖传感器或摄像头的应用程序,Slide Over 可能会成为问题。在 Slide Over 中,摄像头不可用,加速度计可能提供不正确的读数。检查 isDeviceOrientationLocked 或在进入 Slide Over 时强制锁定方向。

常见问题

Slide Over 窗口有多宽?

竖屏方向 — 320 pt。横屏方向宽度可能有所不同,但 horizontalSizeClass 保持为 Compact。这是 Apple 的标准紧凑类。

我可以为自己的应用程序禁用 Slide Over 吗?

可以,在 Info.plist 中设置 UIApplicationSupportsMultipleScenes = NO。应用程序将仅在全屏模式下打开,Slide Over 和 Split View 将不可用。

可以在 Slide Over 中启动多少个应用程序?

只有一个。在 Slide Over 中启动第二个应用程序会替换当前应用程序。iPad 不支持多个浮动窗口 — 这是 iPadOS 的限制。

Slide Over 如何影响性能?

两个应用程序共享 iPad 的资源。对于重量级应用程序(游戏、视频),Slide Over 可能会降低帧率。如果应用程序在 Slide Over 中运行,建议限制 draw calls 并禁用动画。

iPad mini 上支持 Slide Over 吗?

支持。在配备 8.3 英寸屏幕的 iPad mini 上,Slide Over 以相同的模式工作。由于屏幕较小,窗口占据更大的空间百分比,但 UIScene 的行为保持不变。

总结

  • Slide Over — iPad 上主应用程序上方第二个应用程序的浮动窗口。
  • 宽度 — 320 pt,Compact Width Size Class。
  • 激活 — 从屏幕右边缘滑动或从 Dock 滑动。
  • 与 Split View 的区别 — Slide Over 不分割屏幕,而是叠加在其上。
  • 转换 — Slide Over 可以通过拖动到边缘变为 Split View。
  • 生命周期 — 标准 UIScene 生命周期,前台/后台。
  • 结论 — Slide Over 需要支持 Compact Width,但由于固定的 320 pt 宽度,不需要复杂的适配。

我们将开发一款交钥匙移动应用程序

IT Sectr自2017年以来为初创企业和企业打造iOS和Android应用程序。我们将为您提供咨询并提出最佳解决方案。

讨论项目

另请阅读