[Ios] UIVisualEffectView rend différemment sur différents appareils


Answers

Nous avons récemment rencontré ce problème lorsque notre Visual Effect View était une couleur grise laide sur l'une des machines de notre développeur.

UIVisualEffect *blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight];
UIVisualEffectView *visualEffectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect];

Il s'avère qu'ils avaient activé Low Quality Graphics Override sur leur simulateur iOS. Le retour de cette option à l'option Device Default résout le problème et affiche une belle vue translucide.

iOS Simulator> Barre de menus> Débogage> Remplacement de la qualité graphique> Device Default

Question

Dans mon ViewController.swift :

var img = UIImageView(image: UIImage(named: "puddles"))

img.frame = view.bounds;
view.addSubview(img);


var effect = UIBlurEffect(style: UIBlurEffectStyle.Light)
var effectView = UIVisualEffectView(effect: effect)
effectView.frame = CGRectMake(0, 0, 500, 500)
view.addSubview(effectView)

L'image telle que rendue en utilisant le code ci-dessus dans les simulateurs iPad Air , iPhone 5 ou iPhone 5S :

L'image telle que rendue en utilisant le code ci-dessus dans les simulateurs iPhone 4S , iPad 2 ou iPad Retina :

Remarque: Les deux images ci-dessus ont été extraites du simulateur, mais elles peuvent également être reproduites sur des appareils fonctionnant sous iOS 8 Beta 1.

Évidemment, je voudrais réaliser le premier effet sur tous les appareils. Comment puis-je obtenir le même premier effet sur tous les appareils?




Links