2013-10-22 2 views
11

La finestra di anteprima/switcher multitasking mostra un comportamento strano in iOS 7. Ecco come appare quando imposto questa proprietà per entrambe le app.Switcher multitasking iOS 7: Navbar appare nero

self.navigationController.navigationBar.translucent = NO; 

translucent = no Ora, per l'applicazione bianco ho commentato la linea.

Ora quando l'eseguo di nuovo e andare direttamente al switcher, questo è ciò che ottengo: enter image description here

Se eseguo l'applicazione e poi andare alla schermata iniziale o qualsiasi altra applicazione e poi andare al switcher, questo è quello che ottengo: enter image description here

C'è un modo per correggere questo problema mentre si dispone di barra di navigazione traslucida?

Grazie.

+2

Qualche fortuna con questo? Sto affrontando lo stesso – akshay1188

+0

@ akshay1188 No, non ancora. Non impedisce a Apple di approvare le tue app. –

+0

Ancora sembra strano – akshay1188

risposta

8

Mi sono imbattuto anche in questo. Poiché non hai alcun contenuto sotto la barra di navigazione traslucida (e/o la barra delle schede o la barra degli strumenti), a volte può apparire nero nel commutatore di app. Stavo usando una vista di raccolta che era vincolata alle guide di layout superiore e inferiore e quindi non c'era nulla dietro la barra delle schede e la barra di navigazione. Quando l'app è in primo piano, sembra corretta perché deve esserci un colore di sfondo predefinito applicato da Apple (forse sullo UIWindow) in modo da non vedere fino al trampolino. Questo colore di sfondo sembra essere sparito (o nero) quando nel commutatore dell'app lo fa apparire così.

Il problema va via sul controller di vista che sono impostati per estendere sotto superiore e/o barre di fondo:

self.edgesForExtendedLayout = UIRectEdgeTop | UIRectEdgeBottom;

o in Interface Builder:

enter image description here

Se questo doesn Se ti piacciono le tue esigenze o hai ancora altri controller di vista che non si estendono sotto le barre in alto e in basso, otterrai comunque le barre nere nello switcher dell'app. Il modo in cui ho risolto era impostare il colore di sfondo UIWindow nella mia appDelegate.

self.window.backgroundColor = [UIColor whiteColor];

1

invece di farlo in codice, è anche possibile farlo tramite Storyboard.

Nella barra di navigazione della barra di navigazione principale, assicurarsi di disattivare la sua traslucenza.

enter image description here

mi sa che è una soluzione più semplice.

+0

Mi rendo conto che questa è una domanda vecchia, ma questa semplice soluzione ha funzionato per me – codeDude