我知道,这似乎是一个糟糕的解决方案,但我无法思考或想出如何做出更好的事情。 我需要做的就像菜单,iPad菜单,工具栏上和下,以及背景图像。在底部工具栏中,我将有4个不同的按钮。每个按钮都将在屏幕中间创建选项菜单。一个按钮需要显示3个选项(带图像的按钮),另外4个选项,另外8个选项(为此,我将使用滚动视图和页面控制,因为我将需要2个页面),另外2个选项。 我试图使用子视图,每个按钮都有一个子视图,我在子视图中添加了选项。当我选择一个按钮时,其子视图已加载,但当我尝试更改其位置和大小时,其按钮被遗漏,子视图为空... 现在我将在ViewController中拥有4个子视图,但是隐藏了。当我选择一个按钮时,视图将会出现,而其他视图将会隐藏。这意味着,所有子视图都将被加载。这方便吗? 这种方法需要大量内存吗? 如果有人有另一个更好的解决方案,我将非常感激...... 感谢
答案 0 :(得分:1)
是的,您可以在视图控制器中拥有多个隐藏的子视图,但我认为这不是最实用的方法。
您提到菜单会出现在屏幕中央。在这种情况下,我认为更好的方法是为每个菜单创建一个单独的视图控制器,然后让主视图控制器使用视图控制器的modalPresentationStyle
属性以模态方式显示它们。通过这样做,您可以节省大量时间,因为不必编写代码来检查哪些视图被隐藏,哪些视图不被隐藏;你让API完成它的工作,所以最多你需要实现一些方法,例如dismissModalViewControllerAnimated:
。
查看Apple的documentation about UIViewController,更具体地说是“呈现另一个视图控制器的内容”一节。