UINavigationController il ridimensionamento automatico vede comportamento
-
22-09-2019 - |
Domanda
ho letto nella documentazione di Apple sul comportamento di ridimensionamento del UINavigationController e non è stato un gran problema fino ad ora.
Ho il seguente codice per impostare il mio punto di vista di UINavigationController:
navController.view.frame = CGRectMake(0, 40, 320, 420);
e questo è sufficiente finché la visualizzazione è oscurata da una vista modale, a questo punto la vista viene riportata alla dimensione predefinita in una tra le chiamate di viewWillAppear
e viewDidAppear
(come UINavigationController eredita da UIViewController).
sto cercando di mantenere un banner visibile sopra l'UINavigationController (nello spazio 40 da 320 lasciato disponibile), ma questo banner è costantemente oscurato come descritto sopra.
C'è un modo allo scopo di sopprimere il comportamento di ridimensionamento del UINavigationController senza sottoclasse UIViewController me stesso?
Soluzione
Nel costruttore di interfaccia, è possibile deselezionare la casella di controllo ridimensionamento automatico.
Nel codice, è
[myNavController.view setAutoresizesSubviews: NO];
Altri suggerimenti
Mi piacerebbe provare
myNavController.superview.autoresizesSubviews = NO
e, ovviamente, controllare myNavController.autoresizingMask
Come ultima risorsa, la sua sottoclasse superview e reimplementare layoutSubviews