Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/117.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.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 对于textLabel,applicationWillEnterForeground找不到零_Ios_Swift_Null_Textlabel - Fatal编程技术网

Ios 对于textLabel,applicationWillEnterForeground找不到零

Ios 对于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

我试图改变标签上的文字时,应用程序将进入前台,但我总是得到

致命错误:在展开可选值时意外发现nil

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属性