L'objectif: créer une vue floue dans l'application.utiliser UIVisualEffectView pour créer une vue de flou, corriger sur le simulateur mais pas sur iphone & ipad
Le code que j'utilise:
func createBlurBackgroundView()
{
if !UIAccessibilityIsReduceTransparencyEnabled()
{
if blurredSubView == nil || blurredSubView.superview == nil
{
print("Create blurred background view")
self.backgroundColor = UIColor.clearColor()
let blurEffect = UIBlurEffect(style: UIBlurEffectStyle.Light)
blurredSubView = UIVisualEffectView(effect: blurEffect)
blurredSubView.frame = self.bounds
self.insertSubview(blurredSubView, atIndex: 0)
}
}
else
{
print("Transparency disabled!! no blur view")
}
}
Le résultat: tout fonctionne bien sur le simulateur:
Mais quand je l'ai couru sur l'iPhone et iPad, il ressemble :
VEUILLEZ NOTER QUE JE N'A PAS CHANGÉ LA "TRANSPARENCE DE RÉDUCTION" " PARAMÈTRES!
Ensuite, quand je veux prendre un instantané de ce fond noir sans flou, devinez quoi ?! dans le flux de photos, j'ai vu exactement la bonne image flou vue ...
Aussi, quand j'ai double-cliqué sur le bouton d'accueil, et regarde l'interface multi-tâches, j'ai vu l'effet de vue flou!
Plus d'info: J'utilise iphone6s, ipad, air2 iOS 9.3.1 version Xcode 7.3
Je suis tellement fatigué à essayer de résoudre ce problème j'ai essayé d'autres méthodes comme prendre l'image de l'instantané et appliquez effet de flou sur l'image, mais a d'autres bugs et autres
Avez-vous vérifié ce que renvoie UIAccessibilityIsReduceTransparencyEnabled() '? – Jelly
@ jelly oui, s'il vous plaît vérifier mon code, il ya des informations d'impression, et j'ai également vérifié les paramètres –
Où appelez-vous 'createBlurBackgroundView()'? – Jelly