ios - 设备方向在标签栏应用程序中启动所有 View Controller

标签 ios objective-c iphone xcode ios8

我有一个带有 4 个选项卡栏项目的选项卡栏 Controller 的应用程序,每个选项卡栏项目显示一个 View Controller 和 viewDidLoad 启动查询解析方法。 从第一个 ios8 beta 开始,当设备(或模拟器)改变方向时,应用程序启动所有 View Controller viewDidLoad 方法,然后在所有 View Controller 中启动查询解析方法! 我怎么能阻止这个!

我哪里漏了?

非常感谢!

附言: 请原谅我糟糕的英语 ;-)

最佳答案

这似乎是 future 的行为。您需要更改代码来处理它。您必须将其移动到 View 中,可能会出现一个 bool/date 以跟踪您上次加载数据的时间。

你需要重构这样的东西:

  1. 为 VC 创建一个 BOOL 属性,例如 loadedData
  2. viewDidLoad 中获取您的加载代码,并将其移动到 viewWillAppear: 中,用支票 if (!self.loadedData) { }

关于ios - 设备方向在标签栏应用程序中启动所有 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26288330/

相关文章:

iphone - Xcode错误语义错误值可能无法响应 'initWithFrame:image Name:'

ios - xcode 7 是否编译构建操作中的所有文件

ios - 为什么更新 CALayer 会导致 CPU 使用率(其他进程)增加 60-70%?

iphone - NavigationController 未加载 View

ios - Swift ios - 将 key=value 文本文件读入 nsdictionary

ios - 我可以在没有coredata的情况下使用icloud数据吗?

ios - Objective C 中的 RSA 实现

ios - Facebook SDK 不是动态库

ios - 如何在 iOS 上使用 Admob Phonegap 插件

ios - wav 到 aac 转换 interruptListener 不在 ios 中调用