我想在应用程序加载数据时在初始屏幕上显示 GIF 图像。
我的启动图像至少显示大约 3 或 4 秒,这就是为什么我想在启动图像上显示加载文本(如 gif 图像),以便用户认为该应用正在加载。
最佳答案
只需将一个标签添加到您的初始图像和一个 NSTimer
即可定期更改其文本,如下所示
splash = [[UIImageView alloc] initWithFrame:self.window.frame];
splash.image = [UIImage imageNamed:@"splash"];
[self.window addSubview:splash];
这是我用来显示启动画面的代码,然后
NSTimer *loading = [[NSTimer alloc]init];
[loading performSelector:@selector(YOUR_SELECTOR) withObject:YOUR_LABEL afterDelay:0.3f];
YOUR_SELECTOR
是设置标签文本的方法,YOUR_LABEL
是设置文本的标签
编辑
抱歉 NSTimer
实际上我在文本加载中使用了 activityindicator ...
在 application:didFinishLaunchingWithOptions:
方法中
它的代码是
splash = [[UIImageView alloc] initWithFrame:self.window.frame];
splash.image = [UIImage imageNamed:@"splash"];
[self.window addSubview:splash];
hud = [[MBProgressHUD alloc]initWithView:splash];
[splash addSubview:hud];
hud.labelText = @"Loading...";
[hud show:YES];
[self performSelector:@selector(Load_FirstView) withObject:nil afterDelay:3];
[self.window makeKeyAndVisible];
和Load_FirstView
方法如下
-(void)Load_FirstView
{
[splash removeFromSuperview];
MasterViewController *masterViewController = [[MasterViewController alloc] initWithNibName:@"MasterViewController" bundle:nil];
self.navigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController];
self.navigationController.navigationBar.tintColor = [UIColor blackColor];
masterViewController.managedObjectContext = self.managedObjectContext;
self.window.rootViewController = self.navigationController;
[self.window makeKeyAndVisible];
}
关于objective-c - 如何在 objective-c 的启动图像上方显示 "Loading..."gif 图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10600371/