gpt4 book ai didi

ios - UIActivityIndi​​cator 添加 AppDelegate

转载 作者:行者123 更新时间:2023-11-29 05:49:54 28 4
gpt4 key购买 nike

我想在应用程序打开时运行 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)
}

最佳答案

您想要实现的是在启动屏幕期间显示UIActivityIndi​​cator,遗憾的是不可能。如果您想在启动屏幕上执行任何动画,请使用您的第一个 View Controller 作为启动屏幕,并在启动屏幕上的动画结束时重定向到主屏幕。

<小时/>一些想法:

  • 创建单独的加载页面并从应用委托(delegate)中的 didFinishLaunchingWithOptions 方法调用
  • 添加加载指示器(可以是任何你想要的)
  • 设置 2-3 秒的计时器,结束后重定向到主屏幕

附言仅仅为了向用户展示一些很棒的动画/加载屏幕而延迟应用程序启动并不是一个好主意。对于第一次使用应用程序的用户来说,这可能看起来很酷,但是随着应用程序的广泛使用,用户可能会在每次启动应用程序时等待几秒钟而感到沮丧。

<小时/>祝你好运:)

关于ios - UIActivityIndi​​cator 添加 AppDelegate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55772242/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com