I know, this seems a bad solution, but I can’t think or figured out how to make something better.
What I need to do is like a menu, iPad menu, with a toolbar up and bottom, and an image in the background. In the bottom toolbar, I’m going to have 4 different buttons. Every button is going to create the options menu in the middle of the screen. One button needs to display 3 options (buttons with images), another 4 options, another 8 options (for this, I’m going to use Scroll View and Page Control, because I’m going to need 2 pages), another 2 options.
I was trying to use subviews, one subview for every button, and I was added the options in the subviews. When I select one button, its subview was loaded, but when I tried to change its position and size, its buttons was missed, the subview was empty…
Now I’m going to have the 4 subviews in the ViewController, but hidden. When I select one button, the view is going to appear, and the others views are going to have hidden. This means, that all the subviews are going to have loaded. Is this convenient?
Is this method requires a lot of memory?
If somebody have another and better solution, I’ll be completely grateful…
Thanks
I know, this seems a bad solution, but I can’t think or figured out
Share
Yes, you can have multiple hidden subviews within a view controller, but I don’t think it’s the most practical way of going about it.
You mention that the menus are to appear in the center of the screen. In this case, I think a better approach would be to create a separate view controller for each of your menus and then have your main view controller present them modally by using the view controller’s
modalPresentationStyleproperty. By doing this, you’re saving yourself a ton of time by not having to write code that checks for which views are hidden and which aren’t; you’re letting the API do its job, so at most you’ll need to implement a few methods such asdismissModalViewControllerAnimated:.Check out Apple’s documentation about UIViewController, and more specifically the section called “Presenting Another View Controller’s Content”.