当应用程序进入后台时,我想在顶部视图控制器顶部的 xib 文件中放置一个模糊视图(以便可以对其进行自定义),以便用户在使用多任务处理时无法看到我的应用程序的内容。我该怎么做?我用根视图控制器尝试了很多东西,但没有用。我知道我需要使用这些委托方法,但我不确定如何获取顶视图控制器并在其上放置一个视图。我正在使用带有一堆导航控制器的标签栏控制器。
func applicationWillResignActive(_ application: UIApplication) {
}
Run Code Online (Sandbox Code Playgroud)
和
func applicationWillEnterForeground(_ application: UIApplication) {
}
Run Code Online (Sandbox Code Playgroud)
当应用程序再次打开时,我显然想摆脱那种模糊的视图,但我也想使用 Face/Touch ID 来提供访问权限。我认为使用 LocalAuthentication 非常简单。
在AppDelegate.swift课堂上,请试试这个代码片段,
let visualEffectView = UIVisualEffectView()
func applicationWillEnterForeground(_ application: UIApplication) {
self.visualEffectView.removeFromSuperview()
}
func applicationWillResignActive(_ application: UIApplication) {
if !self.visualEffectView.isDescendant(of: self.window!) {
let blurEffect = UIBlurEffect(style: .light)
self.visualEffectView = UIVisualEffectView(effect: blurEffect)
self.visualEffectView.frame = (self.window?.bounds)!
self.window?.addSubview(self.visualEffectView)
}
}
func applicationDidBecomeActive(_ application: UIApplication) {
self.visualEffectView.removeFromSuperview()
}
Run Code Online (Sandbox Code Playgroud)
是的,你是正确的左右Face ID/Touch ID使用LocalAuthentication,您可能需要使用UIApplicationWillEnterForegroundNotification来检测,如果应用程序来到前台,并相应地显示验证警告。我认为您需要将此行为添加到您的ViewController.
| 归档时间: |
|
| 查看次数: |
1523 次 |
| 最近记录: |