如何在自定义视图中以编程方式添加UIActivityIndi​​cator?

时间:2019-04-16 00:53:54

标签: ios swift uiactivityindicatorview

我正在使用此库https://github.com/PiXeL16/RevealingSplashView添加类似启动画面的内容。

从Internet上获取数据时,我正在使用RevealingSplashView。但不幸的是,如果请求时间过长,则会使应用程序冻结。所以我想在屏幕的底部中心或RevealingSplashView中的其他位置添加类似UIActivityIndi​​catorView的内容。

var revealingSplashView = RevealingSplashView(iconImage: UIImage(named: "loadscreenLogo")!,iconInitialSize: CGSize(width: 110, height: 110), backgroundColor: AppColor.mainYellow.getUIColor())
revealingSplashView.addSubview(UIActivityIndicatorView())

但是它什么也没显示

1 个答案:

答案 0 :(得分:0)

这就是我要做的。您需要UIActivityIndi​​catorView的实例,而不是使用类本身。

//loading indicator
let indicator:UIActivityIndicatorView = UIActivityIndicatorView  (activityIndicatorStyle: UIActivityIndicatorViewStyle.gray)

然后加载指示器-位于屏幕中央,但是我们可以使用.center CGPoint轻松更改该指示器。您可以使用.frame来增大指标。

fileprivate func loading(){
    indicator.color = UIColor.gray
    indicator.frame = CGRect(x: 0.0, y: 0.0, width: 15.0, height: 15.0)
    indicator.center =  CGPoint(x: revealingSplashView center.x, y: revealingSplashView.center.y - (navigationController?.navigationBar.frame.height)! )
    revealingSplashView.addSubview(indicator)
    indicator.bringSubview(toFront: self.view)
    indicator.startAnimating()
}

完成后

self.indicator.stopAnimating()

并删除指示器