UIView不能被取消隐藏

时间:2016-03-06 12:06:54

标签: ios swift

我目前在UIActivityIndicatorView中有一个UILabelUIView,默认情况下都隐藏了这些内容:

UIView

点击“登录”按钮后,应取消隐藏所有3个元素:

@IBAction func signinTapped(sender: UIButton) {
    loading.hidden = false
    activityIndicatorView.startAnimating()

收到服务器的响应后,应再次隐藏所有3个元素:

                    if(success == 1)
                    {
                        NSLog("Login SUCCESS");

                        let prefs:NSUserDefaults = NSUserDefaults.standardUserDefaults()
                        prefs.setObject(username, forKey: "USERNAME")
                        prefs.setInteger(1, forKey: "ISLOGGEDIN")
                        prefs.synchronize()

                        loading.hidden = true
                        activityIndicatorView.stopAnimating()

                        self.performSegueWithIdentifier("goto_attendance", sender: self)
                    }

但是,点按“登录”按钮后,元素不会取消隐藏

我试图通过创建一个按钮来隐藏和取消隐藏元素来测试它,并且它有效。因此,所有出口和变量名都是正确的。

当它之前还有其他功能时,它就不会隐藏和取消隐藏,例如设置prefs:NSUserDefaults,如上面的代码所示。

1 个答案:

答案 0 :(得分:2)

在主线程中执行

dispatch_async(dispatch_get_main_queue(), { () -> Void in
    loading.hidden = true
    activityIndicatorView.stopAnimating()
})