Allocate them in viewWillAppear: if they are nil.

Just create a  conditionalInit method for the purpose of this and put it inside 
viewWillAppear.

On Dec 18, 2016, at 4:51 AM, Andreas Falkenhahn wrote:

> I do not use Interface Builder or Storyboards to create my GUI
> but I do it manually. Currently, I'm setting up all controls
> in viewDidLoad() of my UIViewController.
> 
> So I'm doing stuff like this in viewDidLoad():
> 
>    UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
>    ...
>    [self.view addSubview:button];
> 
> The actual positioning is then done in viewDidLayoutSubviews(),
> depending on the device's orientation.
> 
> According to my research, iOS versions before v6 purged views
> on low-memory conditions but AFAIU this is no longer done starting
> with v6. My app targets iOS 8.0 and up so can I rely on viewDidLoad()
> being called only once?
> 
> The reason why I'm asking is that I retain some controls in
> viewDidLoad() because I need them later. I release those controls
> in dealloc(). Now, if viewDidLoad() could be called more than
> once, I'd leak memory. But since viewDidUnload() is deprecated
> anyway, I think it is safe to assume viewDidLoad() is only called
> once because otherwise Apple would have to provide viewDidUnload()
> as well... but still, I'd be glad if somebody could just confirm
> my observations. Thanks.
> 
> -- 
> Best regards,
> Andreas Falkenhahn                          mailto:andr...@falkenhahn.com
> 
> _______________________________________________
> 
> 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/zav%40mac.com
> 
> This email sent to z...@mac.com


_______________________________________________

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