Ios 对于textLabel,applicationWillEnterForeground找不到零
我试图改变标签上的文字时,应用程序将进入前台,但我总是得到 致命错误:在展开可选值时意外发现nilIos 对于textLabel,applicationWillEnterForeground找不到零,ios,swift,null,textlabel,Ios,Swift,Null,Textlabel,我试图改变标签上的文字时,应用程序将进入前台,但我总是得到 致命错误:在展开可选值时意外发现nil ViewController.swift @IBOutlet var textLabel: UILabel! func showLabel() { textLabel.text = "Welcome back" } 及 知道如何修复它吗?正如我在上一篇文章中所解释的,您应该在视图控制器的viewDidLoad功能中初始化标签 事实上,当您在applicat
ViewController.swift
@IBOutlet var textLabel: UILabel!
func showLabel() {
textLabel.text = "Welcome back"
}
及
知道如何修复它吗?正如我在上一篇文章中所解释的,您应该在视图控制器的
viewDidLoad
功能中初始化标签
事实上,当您在applicationWillEnterForeground
中时,您的视图控制器尚未初始化,因此标签textlab为null(nil
),您正试图访问null对象的属性(错误原因)
ViewController.swift:
@IBOutlet var textLabel: UILabel!
func viewDidLoad() {
textLabel.text = "Welcome back"
}
如前所述,您应该在视图控制器的
viewDidLoad
功能中初始化标签
事实上,当您在applicationWillEnterForeground
中时,您的视图控制器尚未初始化,因此标签textlab为null(nil
),您正试图访问null对象的属性(错误原因)
ViewController.swift:
@IBOutlet var textLabel: UILabel!
func viewDidLoad() {
textLabel.text = "Welcome back"
}
问题是,您正在创建
ViewController
的新实例,并尝试将数据设置为该实例
而不是使用现有的实例(您在
didfishlaunchwithoptions:
)上创建的)问题是,您正在创建ViewController
的新实例,并尝试将数据设置为该实例
而不是使用现有的一个(您在
上创建的,完成启动时使用选项:
)谢谢您的回答!我成功地做到了
NSNotificationCenter.defaultCenter().addObserver(self, selector: "showLabel", name: UIApplicationDidBecomeActiveNotification, object: nil)
在viewDidLoad中
然后在AppDelegate中
func showLabel() {}
基于:
谢谢你的回答!我成功地做到了
NSNotificationCenter.defaultCenter().addObserver(self, selector: "showLabel", name: UIApplicationDidBecomeActiveNotification, object: nil)
在viewDidLoad中
然后在AppDelegate中
func showLabel() {}
基于:
该视图控制器视图是否已加载?可能是重复的是,这是我的解决方案:但我以前找不到它。今天有人问视图控制器视图是否已加载?可能是重复的是,这是我的解决方案:但我以前找不到它。今天有人问它不工作。我在看到错误后第二次这样做了,但没有起作用。我是在看到错误后第二次这样做的,但它没有帮助我知道,但我如何才能访问现有的一个?func应用程序(application:UIApplication,didFinishLaunchingWithOptions launchOptions:[NSObject:AnyObject]?)->Bool{//应用程序启动后的自定义覆盖点。返回true}@chrisco:如果您是从故事板设置ViewController,请尝试反向机制(表示从视图控制从应用程序委托获取数据)。否则,请将您的ViewController设置为应用程序的rootViewController属性我知道,但我如何才能访问现有的一个?func应用程序(应用程序:UIApplication,didFinishLaunchingWithOptions launchOptions:[NSObject:AnyObject]?)->Bool{//在应用程序启动后覆盖自定义点。返回true}@chrisco:如果您正在从情节提要设置ViewController,请尝试反向机制(即从视图控件从应用程序委托获取数据)。否则,请将ViewController设为应用程序的rootViewController属性