Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/114.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何在TabBar控制器中单独启动Viewcontroller_Ios_Swift_Uitabbarcontroller - Fatal编程技术网

Ios 如何在TabBar控制器中单独启动Viewcontroller

Ios 如何在TabBar控制器中单独启动Viewcontroller,ios,swift,uitabbarcontroller,Ios,Swift,Uitabbarcontroller,我创建了一个带有选项卡栏导航的Swift项目。接下来,我在我的故事板中添加了一个选项卡栏控制器,一个连接所有视图的控制器。现在有些事情似乎很奇怪。如果两个ViewController中的一个无法获取任何数据,则另一个ViewController的速度也很慢。两者之间没有联系。那么有没有办法解决这个问题呢 查找附加的“我的故事板”: 如果两个ViewController中的一个无法获取任何数据,则另一个ViewController的速度也很慢。两者之间没有联系 选项卡栏控制器的一个特点是它同时实例

我创建了一个带有选项卡栏导航的Swift项目。接下来,我在我的故事板中添加了一个选项卡栏控制器,一个连接所有视图的控制器。现在有些事情似乎很奇怪。如果两个ViewController中的一个无法获取任何数据,则另一个ViewController的速度也很慢。两者之间没有联系。那么有没有办法解决这个问题呢

查找附加的“我的故事板”:

如果两个ViewController中的一个无法获取任何数据,则另一个ViewController的速度也很慢。两者之间没有联系

选项卡栏控制器的一个特点是它同时实例化了它的所有子项。因此,您有一个导航控制器及其子控制器和一个表视图控制器,它们同时存在。因此,如果其中一个减慢了接口,那么另一个的接口也会减慢


这里的解决方案是不要减慢接口速度。听起来您好像做了一些非常错误的事情,可能是在视图控制器的viewDidLoad?中,例如联网或在主线程上进行大量计算。不要。把所有的工作放到一个后台线程中,这样它就不会减慢速度。这可能相当棘手;例如,通过网络收集表视图的数据是一个困难的问题,因为您必须显示表,在后台获取数据,然后在主线程上填充表。但这就是你必须要做的。

嗨,马特,一个Viewcontroller有时会变慢的原因是,两个Viewcontroller都试图根据查询从Firebase加载数据。如果查询找不到任何数据,则需要更长的时间,并且由于这种延迟,我提出了请求。谢谢如果查询找不到任何数据,它需要一点时间好的,但我要说的是,这不应该。没有什么需要花费更长的时间,因为接口的整个管理应该在主线程上进行,但是Firebase的联网应该在后台线程上进行。