2010-03-09 18 views
7

Ok, così ho aggiunto con successo un rightBarButtonItem per chiamare un selettore personalizzato (chiamato da un UIViewController), come segue:Come aggiungere più pulsanti a un NavigationBar?

UIButton* infoButton = [UIButton buttonWithType:UIButtonTypeInfoLight]; 

[infoButton addTarget:self action:@selector(showInfoView:) forControlEvents:UIControlEventTouchUpInside]; 

self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:infoButton]; 

E 'possibile fare la "voce tasto destro del bar" in realtà essere diverse distinte pulsanti (e quindi rimuovere il testo del titolo dalla barra di navigazione)?

Sto cercando modi per ottenere più spazio sullo schermo, e questa sembra una scelta logica ... anche se qualsiasi altro suggerimento sarebbe apprezzato (forse dovrei ridurre la dimensione della barra delle schede che uso in basso ...)

risposta

0

Bene, è possibile utilizzare uno UISegmentedControl con lo stile della barra. Oppure puoi aggiungere un generico UIView e aggiungere qualsiasi pulsante desideri.

+1

@Matt è corretto Controllo UISegmentato non è per questo scopo e si consiglia di leggere le linee guida di riferimento UIDesign da Apple First. Grazie –

+0

Per essere onesti, il loro riferimento di progettazione era diverso quando questa risposta è stata pubblicata. –

21
UIBarButtonItem *addAcc = [[UIBarButtonItem alloc] 
           initWithTitle:@"Add"            
           style:UIBarButtonItemStylePlain 
           target:self 
           action:@selector(addNewAcc)]; 

UIBarButtonItem *delAcc = [[UIBarButtonItem alloc] 
      initWithTitle:@"Del"            
      style:UIBarButtonItemStylePlain 
      target:self 
      action:@selector(DeleteButtonAction)]; 

NSArray *arrBtns = [[NSArray alloc]initWithObjects:addAcc,delAcc, nil]; 
self.navigationItem.rightBarButtonItems = arrBtns; 
+1

Che genera un avviso ... conversione puntatore incompatibile che assegna UIBarButtonItem * da un NSArray * _strong .. –

+3

@JayprakashDubey, presumo che tu abbia accidentalmente lasciato "s" di ".rightBarButtonItems" sull'ultima riga che genera il tuo errore . Spero che tu abbia funzionato comunque! –

Problemi correlati