Ho un'app che utilizza Storyboard per visualizzare due schermate. Il primo è un elenco (riferito allo screenshot come "Lista"), e il secondo è una mappa ("Térkép"). Ogni vista ha un pulsante di navigazione sinistro e destro. Premendo il tasto destro si spinge la vista della mappa sul Navigation Controller. Il pulsante Indietro è nascosto manualmente dal metodo viewDidLoad
della mappa.UIBarButtonLe dimensioni dell'elemento differiscono
La domanda è, che il motivo per cui fare gli elementi della barra del tasto ha formato differente su ogni schermo? Come posso controllare la dimensione dei pulsanti?
Le immagini sui pulsanti sono della stessa dimensione. Skinning è fatto in AppDelegate
attraverso le impostazioni di aspetto:
// navbar background
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"bg-titlebar.png"]
forBarMetrics:UIBarMetricsDefault];
// navbar button background
[[UIBarButtonItem appearance] setBackgroundImage:[[UIImage imageNamed:@"btn-main.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(4.0, 4.0, 4.0, 4.0) resizingMode:UIImageResizingModeStretch]
forState:UIControlStateNormal
barMetrics:UIBarMetricsDefault];
[[UIBarButtonItem appearance] setBackgroundImage:[[UIImage imageNamed:@"btn-main-active.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(4.0, 4.0, 4.0, 4.0) resizingMode:UIImageResizingModeStretch]
forState:UIControlStateHighlighted
barMetrics:UIBarMetricsDefault];
// back button background
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:[[UIImage imageNamed:@"btn-back.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(4.0, 12.0, 4.0, 4.0) resizingMode:UIImageResizingModeStretch]
forState:UIControlStateNormal
barMetrics:UIBarMetricsDefault];
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:[[UIImage imageNamed:@"btn-back-active.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(4.0, 12.0, 4.0, 4.0) resizingMode:UIImageResizingModeStretch]
forState:UIControlStateHighlighted
barMetrics:UIBarMetricsDefault];
bene nel mio caso questa formula sempre ha lavorato per me. Potrebbe essere che stai dando dei limiti al tuo pulsante bar separatamente o che ci dovrebbe essere qualche problema di orientamento. –
Le domande con le immagini sono sempre apprezzate :) – Anupdas
Provare a impostare i pulsanti nella viewWillAppear se si sta utilizzando viewDidLoad –