数码在线
白蓝主题五 · 清爽阅读
首页  > 演示制作

折叠屏手机退出按钮适配:开发者不可忽视的细节

最近在咖啡馆调试一个演示用的App,朋友拿过我的折叠屏手机翻了两下,突然卡在某个页面退不出去。他下意识按了两下返回键,没反应,最后只能从首页重新进入。其实问题就出在——退出按钮没做好折叠屏适配。

为什么普通返回逻辑在折叠屏上会“失灵”?

传统直板手机的返回操作基本靠系统导航栏或物理按键完成,逻辑清晰。但折叠屏不同,展开后可能运行分屏、多任务,甚至两个应用同时显示。这时候点击“返回”,到底该退哪个页面?是收起副屏内容,还是关闭整个任务?如果开发时没考虑这些路径,用户就会像我朋友那样“被困住”。

从场景出发设计退出流程

比如做一份产品演示PPT的应用,在折叠状态下,主屏展示幻灯片,副屏用来控制备注或播放进度。当用户看完想退出,直接点返回,理想情况应该是先退出演示模式,而不是直接杀掉整个App。否则下次打开还得重新加载文件。

这就要求我们在代码里明确区分“界面层级”和“任务生命周期”。可以这样处理:

<activity android:name=".PresentationActivity" 
          android:parentActivityName=".MainActivity">
    <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value=".MainActivity" />
</activity>

同时在 PresentationActivity 中重写返回行为:

@Override
public void onBackPressed() {
    if (isInSplitMode) {
        exitSplitScreen();
    } else if (isInPresentation) {
        stopPresentation();
    } else {
        super.onBackPressed();
    }
}

别让“返回”变成猜谜游戏

有些应用在折叠后自动弹出新窗口,但没提供明显的关闭按钮。用户只能凭经验去点左上角或者滑动边缘,这种体验很割裂。建议在副屏操作区增加一个视觉明确的“收起”按钮,配合动画提示当前状态可退。

实际测试时,不妨借一台主流折叠屏手机,把常用操作走一遍。特别是从展开态合上屏幕后的返回路径,很多问题都是在这个瞬间暴露出来的。

适配不是为了炫技,而是让用户觉得“这玩意儿真顺手”。一个小小的退出按钮,可能就是决定别人愿不愿意再打开你做的演示的关键。