Emon
Emon

Reputation: 958

How can i add a next and previous button at the segmented Controller on a navigation bar in iphone application development?

I am in great trouble....How can i set next and previous button/arrow at my segmented bar...if anyone need brief about my problem then please see this link...How can i add a next and previous button at the segmented Controller?

i have attached an image to understand the problem...so anybody help me please.... enter image description here

NOTE THAT: In my current project it has more than 5 buttons to add at the segmented bar so when i will press next/previous arrow then segmented bar should be move from his place.If my question is not clear to you then please see my another link....

Thanks in Advance

EDIT:

UIBarButtonItem *previousBarButtonItem = [[UIBarButtonItem alloc] //init];
                                      initWithTitle:@"<"
                                      style:UIBarButtonItemStyleBordered
                                      target:self 
                                      action:@selector(previousBarButtonAction:)];
self.navigationItem.leftBarButtonItem = previousBarButtonItem;

[previousBarButtonItem release];

UIBarButtonItem *nextBarButtonItem = [[UIBarButtonItem alloc] //init];
                                      initWithTitle:@">"
                                      style:UIBarButtonItemStyleBordered
                                      target:self 
                                      action:@selector(nextBarButtonAction:)];
self.navigationItem.rightBarButtonItem = nextBarButtonItem;

[nextBarButtonItem release];

//This Portion For UIToolbar

topToolBar = [UIToolbar new];
topToolBar.barStyle = UIBarStyleDefault;
[topToolBar sizeToFit];
topToolBar.frame = CGRectMake(50, 410, 280, 50);

//Add buttons
UIBarButtonItem *systemItem1 = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd
                                                                             target:self
                                                                             action:@selector(pressButton1:)];

UIBarButtonItem *systemItem2 = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction
                                                                             target:self
                                                                             action:@selector(pressButton2:)];

UIBarButtonItem *systemItem3 = [[UIBarButtonItem alloc]
                                initWithBarButtonSystemItem:UIBarButtonSystemItemCamera
                                target:self action:@selector(pressButton3:)];

//Use this to put space in between your toolbox buttons
UIBarButtonItem *flexItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace
                                                                          target:nil
                                                                          action:nil];

//Add buttons to the array
NSArray *items = [NSArray arrayWithObjects: systemItem1, flexItem, systemItem2, flexItem, systemItem3, nil];

//release buttons
[systemItem1 release];
[systemItem2 release];
[systemItem3 release];
[flexItem release];

//add array of buttons to toolbar
[topToolBar setItems:items animated:NO];

self.navigationItem.titleView = topToolBar;

this is my current coding position now i have 4 buttons in the uitoolbar but only 3 button can see so i want to move this toolbar when i will press next or previous button to see the others button whose are out of frame of uitoolbar??

EDIT:

I able to scroll the navigation bar item using uiview animation but now my problem is when i press the next/prev button then it is moving from the current place according to the changing of the coordinate of the uitoolbar and moving over the pre/next baritem frame whose are not in the uitoolbar items. but it should be wothin a uiview and should change the coordinate within the uiview not out of the view...now tell me what can i do for this problem.

Upvotes: 0

Views: 3411

Answers (2)

DShah
DShah

Reputation: 9866

Firstly in figure the NavigationBar you are seeing is actually UIToolBar. Unfortunately it is not possible to add anymore controls on the UINavigationBar. But you can achieve exactly same UI with UIToolBar where you can add any controls.

So to achieve this use UIToolBar and not UINavigationBar. Also use UIBarButtonItem with custom title to achieve Next and Previous functionality.

EDIT

Here are few links for example of UIToolBar

  1. http://www.codeproject.com/Articles/43658/How-to-Make-a-Toolbar-with-UIToolbar
  2. http://osmorphis.blogspot.com/2009/05/multiple-buttons-on-navigation-bar.html
  3. http://atastypixel.com/blog/making-uitoolbar-and-uinavigationbars-background-totally-transparent/

But this all explains using codes. Instead using Interface Builder, it becomes too easy to use UIToolBar (if coding is not so important).

Upvotes: 1

eric.mitchell
eric.mitchell

Reputation: 8845

I think this is being slightly overcomplicated- can you not just set the text of the two UIBarButtonItems to "<" and ">"?

Upvotes: 0

Related Questions