33

Come utilizzare Visual Effect Views con Blur e Vibrancy in Interface Builder?Come implementare le viste di effetti visivi in ​​Interface Builder?

ho trascinato questo articolo fuori nella vista, poi trascinato un UILabel sul l'ultima vista nella gerarchia - dell'effetto vibrante contentView presumo. Ciò si traduce in una vista offuscata overtop ma non è visibile alcuna etichetta. In qualsiasi altro punto in cui metto l'etichetta nella gerarchia, diventa visibile ma è solo un solido testo nero.

enter image description here

risposta

42

infine capito.

  1. In un cambiamento UIViewController sfondo della vista al blu
  2. trascinare un effetto visivo Visualizzazioni con sfocatura e la vivacità oggetto nella vista, quindi è aggiunto come una visualizzazione secondaria
  3. Nel primo Effect vista visivo, istituito Vincoli di layout automatico al suo contenuto Visualizza: iniziale, finale, superiore e inferiore (per rendere l'effetto sfocato riempire lo schermo)
  4. Espandi la vista che è una sottoview della prima vista effetto visivo per rivelare una seconda vista effetto visivo
  5. Configurare i vincoli di layout automatico per questo Effetto visivo vista, ancora una volta insieme tutti i bordi della sua contenente View per riempire lo schermo - assicurarsi di cambiare le costanti a 0
  6. Espandere la seconda vista Effetto visivo a rivelare il finale View
  7. Trascinare una UILabel nella scena come visualizzazione secondaria della ultima Vedi
  8. Impostare i vincoli di layout automatico per questa etichetta alla sua contenente View - forse leader e Top con costanti di 15
  9. Cambiare il colore del testo dell'etichetta al bianco puro con 0,5 alfa
  10. Cambiare la Stile al buio per entrambe le viste visive nell'Inspector degli attributi (solo per mostrare meglio l'effetto)
  11. eseguire l'applicazione su un dispositivo che supporta l'effetto vibrante completo (iPhone 5+, iPad Air +)

Voila!
iPhone 6 screenshot
e questo è come appare in Interface Builder:

enter image description here

+0

Spiacenti, volevi dire 'alpha' invece di' opacity'? Altrimenti, come hai cambiato l'opacità dell'etichetta? Grazie. – Cesare

+0

@CeceXX yes alpha – Joey

+0

Se si desidera visualizzarlo 'presentViewController', assicurarsi di impostare l'opzione' Presentation' su 'Over Current Context'. Vedi http://www.xmcgraw.com/a-smooth-introduction-to-uivisualeffectview/ – mllm