gpt4 book ai didi

iphone - 在启动时加载 plist 需要很长时间。如何显示事件指标?

转载 作者:行者123 更新时间:2023-11-28 23:08:17 24 4
gpt4 key购买 nike

我的应用程序在启动时加载了一个在线 plist,这是在将要显示的 tableview 中显示数据所必需的。根据互联网连接,加载 plist 可能需要相当长的时间(4-5 秒),并且启动屏幕会一直显示。现在,我想在状态栏中放置一个事件指示器(当启动屏幕仍然显示时),以便用户知道该应用程序正在忙于加载。

我正在 ViewDidLoad 中加载 plist 并创建数组等,但我不确定如何实现我在上面勾勒的内容。

你对这件事有什么看法吗?谢谢。

最佳答案

如果我是你,我会重新考虑你的方法。除非您特别采取措施避免它,否则您下载 plist 的代码很可能会在 applicationDidFinishLaunching: 返回之前被调用。这不好,因为如果需要很长时间,那么看门狗可能会在您的应用程序真正正确启动之前杀死您的应用程序。不是什么好事。

您真的应该在后台线程中开始下载,并在您的实际 View 中粘贴一个微调器。所以像这样:

- (void)viewDidLoad {
...

UIActivityIndicatorView *spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
spinner.center = CGPointMake(self.view.bounds.size.width / 2.0f, self.view.bounds.size.height / 2.0f);
[spinner startAnimating];
[self.view addSubview:spinner];

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
// Do your downloading of your plist, etc
dispatch_async(dispatch_get_main_queue(), ^{
[spinner removeFromSuperview];
});
});
}

关于iphone - 在启动时加载 plist 需要很长时间。如何显示事件指标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8865169/

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