performSegue后不会显示UIViewController文本

时间:2017-10-06 10:32:12

标签: ios uiviewcontroller

我在故事板上看到了一个按钮,上面写着“你很酷”。使用performSegue调用该视图后,将显示视图,但按钮文本不存在。当我在viewWillAppear中以编程方式将文本的值设置为“你很酷”时,仍然没有任何反应。但是,如果我以编程方式定义的文本与MainStoryBoard中的文本不匹配,则显示文本。什么可能导致这种奇怪的行为?

修改

我再遇到同样的问题。这是我正在使用的代码片段:

@IBAction func loginAction(_ sender: Any) {
         print("loginIsExecuting")
         Server.Login(email: inputEmail.text!, password: inputPassword.text!, handlerDone:{
                print("Logged in successfully")
            }, handlerFailed: {
                print("===Failed to log in ")
                self.view.backgroundColor = UIColor.red
            })
}

在handlerFailed之后,文本出现在控制台中,但是在一段时间后(通常为30秒)后面会发生变化

3 个答案:

答案 0 :(得分:0)

请先检查您的按钮字体颜色和按钮背景颜色..如果这没有用,请分享您的代码..

答案 1 :(得分:0)

我觉得按钮标题设置不正确。请确保您使用setLabel作为按钮标题集。

例如:[btnName setTitle:@"Test" forState:UIControlStateNormal];

答案 2 :(得分:0)

使用DispatchQueue.main.sync解决了我的问题

Server.Login(email: inputEmail.text!, password: inputPassword.text!,       handlerDone:{
        print("Logged in successfully")

    }, handlerFailed: {
        print("===Failed to log in ")
        DispatchQueue.main.sync {
            self.view.backgroundColor = UIColor.rer
        }
    })