iOS开发中的Tab Bar控制器。为什么切换选项卡时它会重新运行所有代码?

时间:2019-01-18 15:55:53

标签: ios swift tabs

所以我要创建一个带有两个选项卡的应用程序,这些选项卡是使用Tab Bar控制器创建的。

选项卡栏控制器链接到一个swift文件,同时每个选项卡也连接到它们自己的swift文件,总共3个视图控制器和3个swift文件(每个一个)。

我将它们称为 tab1 tab2 tabcontroller

Tab1 是一个MkMapview,此外还具有两个异步操作和一个网络操作。这里有很多东西。 Tab2 是一个简单的表格视图(垂直滚动列表)

问题在于,每次我切换到 tab2 然后又切换回 tab1 时,它将再次运行 tab1 中的所有内容,而我没有不想。我只希望用户能够在视图之间切换并返回到每个视图,并从它们停下来的地方继续-就像网络浏览器中的标签一样。

我觉得我想要的东西比使用tab方法实现的要简单。

1 个答案:

答案 0 :(得分:1)

将所有网络逻辑嵌入其中

override func viewDidLoad {
   super.viewDidLoad()
   startRequest1()
   startRequest2()
}

在vc加载时调用一次,而不是在切换选项卡时调用的viewWillAppear / viewDidAppear