大家好
我是一个新手 ios 程序员,当我必须切换我的应用程序的页面时,我面临着很多疑问。
术语“页面”是指一个 UIView,它用一些小部件(按钮、文本框、表格..)填充整个屏幕
据我所知,我应该使用 UIViewController 来管理这些页面中的每一个,因为每个页面都应该是一个屏幕的内容。
我的应用程序以带有许多按钮的 ViewScroller 开始,当用户单击其中一个按钮时,它会打开一个新页面。
第一个页面是连接到 Window 的 RootController 的 UIView。
到目前为止,为了打开新页面,我向 RootController 添加了一个子控制器,它作为 RootController 视图的子视图:
RicLocaliController = [[RicercaLocaliViewController alloc] initWithNibName:@"RicercaLocaliViewController" bundle:nil];
[self addChildViewController:RicLocaliController];
[RicLocaliController didMoveToParentViewController:self];
[self.view addSubview:RicLocaliController.view];
RicLocaliController.view.frame = self.view.bounds;
当用户单击“返回”按钮时,我删除了子控制器和子视图。
沿着这条路走下去,我会得到一个动态的控制器树及其视图。
到目前为止,我还没有遇到任何问题,我的应用程序可以在树中上升到第三级并返回。当方向改变时,每个页面的行为都正确。
但恐怕为每个子页面添加一个子控制器和一个子视图可能不是正确的做法。
我担心如果我在方向改变时嵌套很多页面,应用程序可能会响应缓慢,因为超级视图也会做一些事情来管理这个事件。
所以我想知道我所做的是否完全没有意义,是否应该使用导航控制器或其他方式来管理我的页面更改。
不幸的是,我的老板没有给我足够的时间来好好学习这个主题,所以我想要一个建议来遵循最好的解决方案,可能使用框架提供的最标准和不太复杂的组件,而不是最新的功能。
我阅读了很多关于这个主题的网页,但在我看来,有很多方法可以管理 beetwen 导航页面,这让我感到困惑。
我为我糟糕的英语道歉,但我累了,英语不是我的第一语言。