2012-04-11 46 views
6

Soy nuevo en el desarrollo de iOS. He creado una barra de navegación en la vista de mi aplicación para iPad. No necesito un controlador de navegación, por eso he agregado solo la barra de navegación. Ahora quiero agregar el botón en esa barra de navegación. Lo intenté mucho pero no tuve éxito. ¿Es posible agregar solo la barra de navegación con el botón? Si es así, sugiérame un código de muestra.Cómo agregar el botón de barra en la barra de navegación sin controlador de navegación.

"no tengo controlador de navegación o lo necesito. Solo quiero agregar la barra de navegación en una sola vista".

Bellow es mi código que escribo para añadir la barra de navegación en viewDidLoad()

UINavigationBar *navBar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 0, 1026, 50)]; 
[navBar setTintColor:[UIColor blackColor]]; 
[navBar setDelegate:self]; 
[self.view addSubview:navBar]; 

Gracias de antemano ....

Respuesta

1

Puede agregar botones a la barra de navegación de la siguiente manera:

UIBarButtonItem *btnSave = [[UIBarButtonItem alloc] 
           initWithTitle:@"Save" 
           style:UIBarButtonItemStyleBordered 
           target:self 
          action:@selector(save_Clicked:)]; 
navBar.rightBarButtonItem = btnSave; 
[btnSave release]; 

UIBarButtonItem *btnCancel = [[UIBarButtonItem alloc] 
           initWithTitle:@"Cancel"          
           style:UIBarButtonItemStyleBordered 
           target:self 
           action:@selector(cancel_Clicked:)]; 
navBar.leftBarButtonItem = btnCancel; 
[btnCancel release]; 
+2

en el código de arriba esta línea me da error. 'navBar.rightBarButtonItem = btnSave;' error: Problema semántico: propiedad 'rightBarButtonItem' no encontrada en el objeto de tipo 'UINavigationBar *' –

+0

también puede agregar una barra de navegación al archivo xib, luego puede agregarle un elemento de botón de barra. –

5
UIBarButtonItem *bi1 = [[UIBarButtonItem alloc] initWithTitle:@"Edit" style:UIBarButtonItemStyleBordered target:self action:@selector(editButton)]; 

bi1.style = UIBarButtonItemStyleBordered; 
bi1.tintColor = [UIColor colorWithWhite:0.305f alpha:0.0f]; 

self.navigationItem.rightBarButtonItem = bi1; 

[bi1 release]; 
11

Utilicé el Interface Builder para hacer un tableView estático en un UITableViewController. Este UITableViewController se muestra de forma modal. Luego añade un navigationbar sin la UINavigationController detrás de la siguiente manera:

//Creating the plain Navigation Bar 
UINavigationBar *headerView = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 0, 320, 44)]; 

//The UINavigationItem is neede as a "box" that holds the Buttons or other elements 
UINavigationItem *buttonCarrier = [[UINavigationItem alloc]initWithTitle:@"Sign-In"]; 

//Creating some buttons: 
UIBarButtonItem *barBackButton = [[UIBarButtonItem alloc] initWithTitle:@"Zurück" style:UIBarButtonItemStyleDone target:self action:@selector(signInBackPressed:)]; 
UIBarButtonItem *barDoneButton = [[UIBarButtonItem alloc] initWithTitle:@"Fertig" style:UIBarButtonItemStylePlain target:self action:@selector(signInDonePressed:)]; 

//Putting the Buttons on the Carrier 
[buttonCarrier setLeftBarButtonItem:barBackButton]; 
[buttonCarrier setRightBarButtonItem:barDoneButton]; 

//The NavigationBar accepts those "Carrier" (UINavigationItem) inside an Array 
NSArray *barItemArray = [[NSArray alloc]initWithObjects:buttonCarrier,nil]; 

// Attaching the Array to the NavigationBar 
[headerView setItems:barItemArray]; 

// Adding the NavigationBar to the TableView 
[self.tableView setTableHeaderView:headerView]; 

espero que esto ayude a alguien!

Cuestiones relacionadas