0
我一直在尝试创建一个快速方法,允许我在进程启动之前用旋转器替换任何UIView,并在完成过程后重新显示视图。出于某种原因,UIView确实消失了,但微调从不显示。这些问题的方法:以编程方式替换UIActivityIndicator的视图
func showLoader(view: UIView, controller: UIViewController) -> UIActivityIndicatorView {
let spinner = UIActivityIndicatorView(activityIndicatorStyle: .gray)
spinner.color = AC_BLUE
spinner.center = view.center
spinner.startAnimating()
view.alpha = 0
controller.view.addSubview(spinner)
return spinner
}
func hideLoader(view: UIView, spinner: UIActivityIndicatorView) {
view.alpha = 1
spinner.removeFromSuperview()
}
..这我的东西叫这样的:
let spinner = Extensions().showLoader(view: signInBtn, controller: self)
APICalls().getUser(email: usernameTextField.text!, pass: passwordTextField.text!) { success, user in
//..CODE..//
Extensions().hideLoader(view: self.signInBtn, spinner: spinner)
}
而且,我想围绕主VC观点,并认为确实工作。所以我猜猜它一定与视图的位置有关。
谢谢!
看来你正在将'spinner'添加到视图中。然后你设置的视图有一个'0'的alpha,这意味着视图的'subview'的任何东西都会有一个'0'的字母。 – zsteed
不,我将它添加到控制器的主视图(又名.control.view ...) –
您是否尝试过使用“Capture View Hierarchy”来查看它是否在屏幕上可见? – zsteed