归根结底这些问题还是最初的技术实现思路不同。
Android 每个页面是一个 Activity (或者说一个 Window ),同一个 App 会有多个 Window ,而 Window 之间的切换是由系统来管理的,这也是 Android 系统可以实现全局的返回按钮、系统导航手势。
iOS 每个 App 只有一个主 Window ,所有的内容都是在这一个 Window 内显示的,并没有所谓 "页面" 的概念。开发者可以用苹果提供的 UINavigationController 来展示内容和管理导航,也可以自己写导航管理(比如高德地图那种),甚至可以从头实现其他交互模式、同时显示多个导航、支持多指同时导航。所以 iOS 系统层面并没有一个全局的页面导航逻辑,苹果能做的就是提供一些官方控件给你用。
桌面环境和这两个都不一样,桌面 App 也是多窗口,但一般内容导航还是发生在一个窗口内的,并且"鼠标坐标"这个交互维度是始终存在的。快捷键和鼠标坐标,都是系统直接发给高亮窗口,再由这个窗口自行处理的。所以说桌面 App 同样也没有全局的返回之类功能,也是由 App 自行处理的,只不过相比 iOS 多了个全局鼠标坐标,所以开发者可以定位位置。比如一个窗口内,有左右两个内容区域分栏显示,侧滑返回时只会触发鼠标所在的那个区域。但如果没有鼠标,你是不知道该触发哪个区域的。 @
noahhhh