UIActivityIndi cator添加AppDelegate

丈夫志四海,万里犹比邻。这篇文章主要讲述UIActivityIndi cator添加AppDelegate相关的知识,希望能为你提供帮助。
我想在打开应用程序时运行UIActivityIndi??cator。我怎样才能做到这一点?我的代码是我在那里分享它的方式。我想要在Launchscreen打开时使用此代码。

@objc func buttonTapped(_ sender: UIButton) { let size = CGSize(width: 30, height: 30) let selectedIndicatorIndex = sender.tag let indicatorType = presentingIndicatorTypes[selectedIndicatorIndex]startAnimating(size, message: "Loading...", type: indicatorType, fadeInAnimation: nil)DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 1.5) { NVActivityIndicatorPresenter.sharedInstance.setMessage("Authenticating...") }DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 3) { self.stopAnimating(nil) } } for (index, indicatorType) in presentingIndicatorTypes.enumerated() { let x = 150 let y = 250 let frame = CGRect(x: x, y: y, width: 100, height: 100) let activityIndicatorView = NVActivityIndicatorView(frame: frame, type: .orbit) let animationTypeLabel = UILabel(frame: frame) activityIndicatorView.padding = 20 if indicatorType == NVActivityIndicatorType.orbit { activityIndicatorView.padding = 0 } self.view.addSubview(activityIndicatorView) self.view.addSubview(animationTypeLabel) activityIndicatorView.startAnimating()let button: UIButton = UIButton(frame: frame) button.tag = index #if swift(> =4.2) button.addTarget(self, action: #selector(buttonTapped(_:)), for: .touchUpInside) #else button.addTarget(self, action: #selector(buttonTapped(_:)), for: UIControlEvents.touchUpInside) #endif self.view.addSubview(button) }

答案你想要实现的是在发布屏幕期间显示UIActivityIndicator,遗憾的是这是不可能的。如果要在启动屏幕上执行任何动画,请将第一个视图控制器用作启动画面,并在启动画面上的动画结束时重定向到主屏幕。

Some ideas:
  • 创建单独的加载页面并从App delegate中的didFinishLaunchingWithOptions方法调用它
  • 添加加载指示器(可以是任何你想要的)
  • 将计时器设置为2-3秒,当它结束时重定向到主屏幕
附:延迟应用程序启动只是为了向用户展示一些非常棒的动画/加载屏幕并不是一个好主意。对于第一次应用程序用户来说,它看起来很酷,但是随着应用程序的广泛使用,用户可能会在每次启动应用程序时等待几秒钟而感到沮丧。
【UIActivityIndi cator添加AppDelegate】
Good luck :)

    推荐阅读