具有分段控制性能问题的ViewControllers

时间:2013-05-14 23:47:08

标签: ios uiviewcontroller uisegmentedcontrol

我在UITableView中有一个项目列表,当选择一个项目时,我打开一个带有分段控件的ViewController,它应该在三个不同的ViewController之间切换。

我使用ContainerView查看ViewControllers以及三个ViewControllers的数组。

问题是当从表中选择项目时,需要初始化所有三个ViewControllers并将其添加到数组中。由于其中一些ViewControllers需要从核心数据中获取一些数据,因此当用户从表格中选择一个项目时,延迟就会很明显。

是否有更好的方法来实现可以提高性能的分段控制实现。

2 个答案:

答案 0 :(得分:1)

不是将所有三个视图控制器加载到数组中,而是根据需要加载它们。例如,当选择SegmentedControl时,它会加载相应的ViewController。

答案 1 :(得分:0)

听起来你正在加载一个View Controller,然后几乎同时加载了三个视图控制器。如果加载第一个包含分段控件并显示它的视图控制器会更好。 View Controller将调用viewDidLoad,然后您可以加载要显示的第一个View Controller。当用户点击分段控件时,在该点加载相应的视图控制器,因此只需根据需要加载额外的视图控制器。