如何将 UIActivityIndicator 添加到我的应用程序的启动画面?
Posted
技术标签:
【中文标题】如何将 UIActivityIndicator 添加到我的应用程序的启动画面?【英文标题】:How can i add UIActivityIndicator to Splash screen of my app? 【发布时间】:2013-08-02 05:56:30 【问题描述】:是否可以将 UIActivityIndicator 添加到我的应用的启动画面?
我在 delegate.m 文件中使用以下代码,但它对我不起作用..
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
// Override point for customization after application launch.
[NSThread sleepForTimeInterval:5.0]; //for running splash screen more time
UIActivityIndicatorView *spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
spinner.center = CGPointMake(139.5, 75.5); // .5 so it doesn't blur
[self.view addSubview:spinner];
[spinner performSelector:@selector(removeFromSuperview) withObject:nil afterDelay:1.0];
return YES;
请帮帮我
【问题讨论】:
看看这个***.com/questions/9400193/… 从不休眠线程,在操作开始或结束时使用通知或委托进行通信 @Andrea 睡眠有问题吗? @Navi 睡眠呼叫本身没有任何问题。问题是您的应用程序无法处理事件,因为运行循环无法定期执行。这对于您在其中调用它的主线程至关重要。因此,您冒着 ios 终止您的应用程序的风险。 好的,我会删除那个,有什么办法吗? 【参考方案1】:应用的启动画面只是一个静态的 png 文件。您不能向其添加任何内容,例如微调器或动画。但是,您可以做的是,一旦启动画面完成加载,您可以显示一个也具有相同启动画面的视图,然后以编程方式或使用界面构建器将微调器添加到其中。基本上从用户的角度来看,他们无法区分。
我以前用过这种技术,效果很好。
顺便说一句,您的睡眠呼叫会暂时冻结您的应用程序。你最好使用 NSTimer,这样操作系统就不会因为没有响应而终止你的应用程序。
【讨论】:
谢谢。我添加了一个 uiactivity 指示器,其初始状态为动画。现在它正在工作【参考方案2】:试试这个...
UIImageView *splashView; // 在 appDelegate.h 中声明
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
splashView = [[UIImageView alloc]initWithFrame:self.window.bounds];
if (self.window.bounds.size.height > 480)
splashView.image = [UIImage imageNamed:@"Default-568h@2x.png"];
else
splashView.image = [UIImage imageNamed:@"Default.png"];
[self.window addSubview:splashView];
// Add your spinner here.
return YES;
希望我能帮上忙。
【讨论】:
如果可能,请始终使用 MBProgressHUD 进行加载。以上是关于如何将 UIActivityIndicator 添加到我的应用程序的启动画面?的主要内容,如果未能解决你的问题,请参考以下文章
将 UIActivityIndicator 添加到模态视图 (ELCimagepicker)
将 UIActivityIndicator 添加到 UITableView
UISearchBar在Swift中完成后如何停止UIActivityIndicator
按下时如何使 UIButton 收缩为 UIActivityIndicator?