退出应用程序后隐藏 UI [重复]

Posted

技术标签:

【中文标题】退出应用程序后隐藏 UI [重复]【英文标题】:Hide UI after resigning application [duplicate] 【发布时间】:2014-06-17 07:21:52 【问题描述】:

问题如下:

我的应用可以使用密码进行保护。当用户按下主页按钮时,应用程序退出非活动状态。重新打开后,应用程序显示“输入密码”屏幕。但在它出现之前,最初的内容屏幕会显示片刻。此外,如果在按下主页按钮后,用户进入预览模式(主页按钮双击),预览显示内容屏幕,而不是密码屏幕。

所以这里有两个问题:

    如何在应用程序退出之前更改 UI(密码屏幕或某个占位符),以便在预览模式下用户可以看到内容屏幕以外的其他内容。 当应用再次激活时,如何让应用暂时不显示内容屏幕(在密码屏幕之前)。

感谢您的帮助。

【问题讨论】:

你在你的 appDelegate applicationDidEnterBackground: 方法中对你的 UI 做了什么? 目前 - 没有。因为它不会在后台更改 UI。 【参考方案1】:

来自ios App Programming Guide

移到后台时该怎么办

应用程序可以使用他们的 applicationDidEnterBackground: 方法来准备 用于移动到后台状态。移到后台时,所有 应用应执行以下操作:

准备拍照。 applicationDidEnterBackground:方法返回,系统取一个 应用程序用户界面的图片,并将生成的图像用于 过渡动画。如果您的界面中的任何视图包含 敏感信息,您应该先隐藏或修改这些视图 applicationDidEnterBackground: 方法返回。

因此,在您的 applicationDidEnterBackground 方法中,您应该隐藏您的主视图并显示您的“登录”视图。

更新 经过一番研究,事实证明您无法呈现视图控制器 - 您只能影响根窗口。我已经在这个答案中测试了解决方案 - Display a view or splash screen before applicationDidEnterBackground (to avoid active view screenshot) 并且它有效 - 所以你可以创建一个显示你的登录屏幕的图像并将其放在你的 UI 顶部。

【讨论】:

我试过这个,但这似乎不起作用。我试图显示登录控制器动画和非动画。都没有用。 这是目前最接近的解决方案。非常感谢!

以上是关于退出应用程序后隐藏 UI [重复]的主要内容,如果未能解决你的问题,请参考以下文章

Kendo UI - 从重复编辑器中隐藏“结束:从不”选项

JDialog隐藏@Override错误后退出组件侦听器

QT:如何退出应用程序并关闭 UI

动态分配 UI 权限 WPF [重复]

ue4运行后F8退出

使用纯 Javascript 隐藏默认日期选择器 UI [重复]