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