viewWillAppear occurs every time the view reappears, which may be frequently 
and has nothing to do with the creation and initialization of the view. Each 
time it appears you are recreating the button and setting in self.prevButton, 
e.g. which will release the former button and install an identical one. So, no, 
this is not the recommended place to do this. 

Why viewDidLoad fails isn't clear. Is it possible that the toolbar is hidden or 
behind some other view?


On Mar 19, 2013, at 6:48 PM, Koen van der Drift <koenvanderdr...@gmail.com> 
wrote:

> I am programmatically adding some toolbar items to a view in a 
> UIViewController subclass, and it only seems to work when I put the code in 
> viewWillAppear:
> 
> // add a toolbar with a prev and next button
>    self.navigationController.toolbarHidden = NO;
>    UIBarButtonItem *flexibleItem = [[UIBarButtonItem alloc] 
> initWithBarButtonSystemItem: UIBarButtonSystemItemFlexibleSpace target: self 
> action: nil];
>    self.prevButton = [[UIBarButtonItem alloc] initWithTitle: @"Prev" style: 
> UIBarButtonItemStyleBordered target: self action: nil];
>    self.nextButton = [[UIBarButtonItem alloc] initWithTitle: @"Next" style: 
> UIBarButtonItemStyleBordered target: self action: nil];
> 
>    self.toolbarItems = [NSArray arrayWithObjects: self.prevButton, 
> flexibleItem, self.nextButton, nil];
> 
> If I put it in viewDidLoad, the toolbar never shows up.  In the book by 
> Conway and Hillegass (3rd ed), they put similar code in init, but that also 
> doesn't work in my case. Interestingly, I am adding a UISearchBar in init, 
> and that works just fine.
> 
> Why is that? Is viewWillAppear the recommended place to do this?
> 
> - Koen.
> _______________________________________________
> 
> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
> 
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
> 
> Help/Unsubscribe/Update your Subscription:
> https://lists.apple.com/mailman/options/cocoa-dev/rowlandd%40sbcglobal.net
> 
> This email sent to rowla...@sbcglobal.net


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to