Addimg mutiple button on navigation bar in Iphone SDK

I want to add two buttons with a custom image to the navigation bar with a specific position.

I found a solution But this is for the right / left navigation bar.

My code for this:

NSMutableArray *buttons = [[NSMutableArray alloc] initWithCapacity:2]; UIToolbar *tools = [[UIToolbar alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 90.0f, 55.01f)]; // Add Pin button. UIBarButtonItem *bi1 = [[UIBarButtonItem alloc] initWithTitle:@"Edit" style:UIBarButtonItemStylePlain target:self action:@selector(Edit:)]; bi1.style = UIBarButtonItemStyleBordered; bi1.width = 45; [buttons addObject:bi1]; [bi1 release]; // Add Hot Spot button. UIBarButtonItem *bi2 = [[UIBarButtonItem alloc] initWithTitle:@"+" style:UIBarButtonItemStylePlain target:self action:@selector(Add:)]; bi2.style = UIBarButtonItemStyleBordered; [buttons addObject:bi2]; [bi2 release]; // Add buttons to toolbar and toolbar to nav bar. [tools setItems:buttons animated:NO]; [buttons release]; // Add toolbar to nav bar. UIBarButtonItem *twoButtons = [[UIBarButtonItem alloc] initWithCustomView:tools]; [tools release]; self.navigationItem.rightBarButtonItem = twoButtons; [twoButtons release]; 

How can i do this?

0
source share
4 answers
 UIView *vieww =[[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 44)]; [vieww addSubview:yourBtn1]; [vieww addSubview:yourBtn2]; [self.navigationController.navigationBar addSubview:vieww]; 

And if you want to remove yourButtonView, then make will be a global object;

 in .h UIView *vieww; 

and in .m

 -(void)viewWillDisappear:(BOOL)animated { [vieww removeFromSuperview]; } 

Or follow these steps for Link

+4
source

if you use> iOS 5, then use this.

 UIBarButtonItem *btn1=[[UIBarButtonItem alloc] initWithTitle:@" + " style:UIBarButtonItemStyleDone target:self action:@selector(action1:)]; UIBarButtonItem *btn2=[[UIBarButtonItem alloc] initWithTitle:@" - " style:UIBarButtonItemStyleDone target:self action:@selector(action2:) ]; self.navigationItem.rightBarButtonItems=[NSArray arrayWithObjects:btn1,btn2,nil]; 

for <iOS 5 u can use the following:

 UIToolbar* tools = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 160, 44.01)]; tools.barStyle = UIBarStyleBlackOpaque; // create the array to hold the buttons, which then gets added to the toolbar NSMutableArray* buttons = [[NSMutableArray alloc] initWithCapacity:4]; [buttons addObject:btn1]; [buttons addObject:btn2]; [tools setItems:buttons animated:NO]; self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:tools]; 
+1
source

Instead of adding a toolbar, you can create one UIView, add two buttons to this view.

  UIBarButtonItem *twoButtons = [[UIBarButtonItem alloc] initWithCustomView:yourView]; 
0
source

If you want to do this in conjunction with the use of storyboards, check out this question .

0
source

Source: https://habr.com/ru/post/1492344/


All Articles