【发布时间】:2018-11-02 21:55:37
【问题描述】:
我目前正在尝试将变量从应用程序委托传输到 ViewController。我找到的大多数指南都在 Objective-c 中,我没有将代码转换为 swift 的技能。有人可以帮我找到一种方法来做到这一点。
func applicationDidBecomeActive(_ application: UIApplication) {
// Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
var isIpad: Bool!
if UIDevice.current.userInterfaceIdiom == .pad {
isIpad = true
print("iPad")
}else{
print("not iPad")
isIpad = false
}
}
【问题讨论】:
-
发布代码..
-
只有我不知道从哪里开始的代码
-
1.你为什么要检查 iPad 和 iPhone?根据视图大小而不是设备类型做出决定。 2. 为什么在
applicationDidBecomeActive做这个?每次应用程序激活时它都不会改变。 3. 为什么要为此设置一个变量,为什么在应用程序委托中?只需在您需要的地方进行检查(但请参阅第 1 点)。 -
谢谢,但我不是在寻找替代方案。我对我正在尝试做的事情很好,因为它可以完成工作。我的应用将根据设备类型转到不同的视图控制器。
-
“我对我正在尝试做的事情很好,因为它可以完成工作。”您还没有明确说明您要完成的工作。你说你想将一个布尔值从你的应用程序委托传递给一个 ViewController。什么布尔?
isIpad?什么视图控制器?您是说每次您的应用程序激活时,您都想告诉它“您仍在 iPad 上运行!”这没有任何意义。
标签: swift appdelegate