隐藏视图不起作用 - 迅速

Cod*_*ree 1 ios swift

附加了Subviews层次结构,我只想隐藏一个并在登录后显示其他内容.我无法使用导航控制器,因为我需要滑动才能在webview中工作.

所以我尝试简单地切换视图,但它不一致.

任何帮助表示赞赏.

这是我正在尝试的.

func openBrowserView() {
    loader.startAnimating()
    self.viewLoginForm.hidden = true
    self.viewDashboard.hidden = false
    print (" views hid")

    let requestURL = NSURL(string:browserURL)            
    let request = NSMutableURLRequest(URL: requestURL!)            
    request.HTTPMethod = httpMethod            
    webView.delegate = self;        
    webView.loadRequest(request)
}
Run Code Online (Sandbox Code Playgroud)

Ank*_*oel 9

1)同步问题通常是因为您没有更新主线程上的UI.确保在主线程上进行所有UI更改.易于修复,只需使用下面的代码.

dispatch_async(dispatch_get_main_queue()) {
    loader.startAnimating()
    self.viewLoginForm.hidden = true
    self.viewDashboard.hidden = false
}
Run Code Online (Sandbox Code Playgroud)

2)另一个问题可能是您隐藏和显示的子视图仍处于其他视图之下,因此您无法看到它.因此,只需将您要显示的子视图放在前面即可.

self.bringSubviewToFront(yourView)
Run Code Online (Sandbox Code Playgroud)