【问题标题】:Blurring app screen in switch mode on iOS [duplicate]iOS上切换模式下的应用程序屏幕模糊[重复]
【发布时间】:2015-08-13 07:39:12
【问题描述】:

我想在我的 iOS 应用切换时使用模糊。像 PayPal 和其他一些需要隐藏信息的金融应用程序。但我找不到有关此功能的任何信息或提示。

例如支付宝实现:http://40.media.tumblr.com/0334b065e28dfe2e325d32822d87246b/tumblr_mwcl35TZIt1qea4hso1_1280.jpg

【问题讨论】:

  • 您的意思是当您的应用程序进入后台时(不再处于活动状态)?您是否搜索过重复项?
  • 是的,应用程序在后台,但我们可以在多任务面板上看到这个应用程序的屏幕。我需要模糊此屏幕以隐藏私人信息。

标签: ios onblur


【解决方案1】:

您需要将以下代码添加到您的applicationWillResignActive 函数中

    let blurEffect = UIBlurEffect(style: UIBlurEffectStyle.Dark)
    let blurEffectView = UIVisualEffectView(effect: blurEffect)
    blurEffectView.frame = window!.frame
    blurEffectView.tag = 221122

    self.window?.addSubview(blurEffectView)

然后在您的applicationDidBecomeActive 中,使用该行

self.window?.viewWithTag(221122)?.removeFromSuperview()

【讨论】:

  • 谢谢,它工作!但是在应用程序所有时间都有模糊,甚至前景。应用程序激活后如何中止模糊? (我知道它可以很简单,但不起作用。我使用 obj-c)
  • @SulTan 更新了代码。它的 objC 将是 [[self.window viewWithTag:221122] removeFromSuperview]
  • 全部完成,谢谢!一个小补充:[[self.window viewWithTag:221122] removeFromSuperview]也需要放入applicationDidBecomeActive
  • 请注意,当显示控制中心或通知中心然后关闭(以及其他几个事件)时,不会调用 applicationWillEnterForeground。可能会考虑在 applicationDidBecomeActive 中移动 removeFromSuperView
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-04
  • 1970-01-01
  • 2020-06-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多