Aus irgendeinem Grund ist der Unschärfeeffekt von meiner App auf iOS 7.1 verschwunden. Ich verwende denselben Code auf einem Gerät mit iOS 7.0.x und auf einem anderen mit 7.1. Folgendes sehe ich:
iOS 7.0.x
iOS 7.1
Was kann das Problem sein und wie kann man das beheben? (Natürlich möchte ich den Unschärfe-Effekt beibehalten:))
UPDATE:
Dies ist die Farbe, die ich eingestellt habe:
%Vor% und ich habe es aus der Eigenschaft barTintColor
Übrigens, es ist erwähnenswert, dass das Bild, das Sie beschreiben, keine Unschärfe / Transluzenz aufweist. Wenn Sie diesen Schnappschuss machen und den Kontrast erhöhen, können Sie sehen, dass tatsächlich etwas im Hintergrund läuft. Hier ist dein originelles "kein Weichzeichnen / Transluzenz Bild", das ich in Photoshop kontrastiert habe:
Es ist kaum mit bloßem Auge sichtbar, es sei denn, Sie manipulieren das Bild, aber die Unschärfe / Transluzenz ist tatsächlich da.
Auf einen Blick
Es scheint, dass die Navigationsleiste seit iOS7.1 einfach nicht mehr unscharf ist. Zumindest habe ich viele Tests durchgeführt, indem ich neue App-Beispiele gemacht habe, die es nicht mehr gibt.
Workaround (Arbeitet mit iOS 7.1)
Hier ein Beispiel mit FXBlurView
Es ist nicht wunderbar, aber es funktioniert gut und es ist anpassbar. Mein Beispiel ist sicherlich nicht das Beste.
Vorherige vorgeschlagene Lösung (funktioniert nicht unter iOS7.1)
Hier ist meine Lösung, um einen ähnlichen Effekt zu finden. Es ist in Ordnung für die Veröffentlichung, es verwendet keine private API. Aber es kann ein Problem mit dem nächsten Update von iOS haben, da es sich auf die interne Struktur von UINavigationBar
stützt.
Mach das einfach in deinem viewDidLoad
oder wo immer du willst, da es funktioniert:
Ich rate Ihnen auch, AutoLayout zu verwenden, um die UIToolBar
immer auf die Größe des übergeordneten Elements für Rotationen usw. zu begrenzen. Das habe ich nicht getan um den Code kurz und einfach zu machen.
Ich hoffe, es hilft euch!
Tags und Links objective-c iphone ios blur ios7.1