我是iPhone的新宠。在加载UIViewController之前,我已经使用了一些教程,一个启动画面。现在我想在我的应用程序中实现一个NavigationController,并希望在它之前显示一个Splash Screen。因为我是Iphone的新手,所以在加载根导航控制器之前我没有得到任何tutotrials或指南来制作启动画面。
我见过很多方法,他们过度编写Default.png文件等等。我不想实现那个。我希望UIView能够将自定义图像和文本放入其中并将UI视图显示为启动画面
任何人都可以指导我。
提前致谢
答案 0 :(得分:8)
使用“ self.window ”首先显示启动图像。如果您只是简单地写“窗口”,则图像将不会在第一个视图中显示和设置动画,因为在这种情况下图像无法直接链接到窗口。在 appdelegate.m
中编写以下代码 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
MasterViewController *masterViewController = [[MasterViewController alloc] initWithNibName:@"MasterViewController" bundle:nil];
self.navigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController];
self.window.rootViewController = self.navigationController;
[self.window makeKeyAndVisible];
UIImageView *imgv = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"themes.png"]];
imgv.userInteractionEnabled = YES;
[self.navigationController.view addSubview:imgv];
//[imgv release]; If you don't use ARC, uncomment this.
[self performSelector:@selector(removeSplash:) withObject:imgv afterDelay:3.0];
[self.window addSubview:self.navigationController.view];
return YES;
}
- (void)removeSplash:(UIImageView *)imageView
{
[imageView removeFromSuperview];
}
答案 1 :(得分:7)
在这里,你好友。玩得开心,编码愉快....
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//Add a splash screen
UIImageView *imgv = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"splash.png"]];
imgv.userInteractionEnabled = YES;
[navigationController.view addSubview:imgv];
[imgv release];
[self performSelector:@selector(removeSplash:) withObject:imgv afterDelay:3.0];
[window addSubview:navigationController.view];
return YES;
}
- (void)removeSplash:(UIImageView *)imageView {
[imageView removeFromSuperview];
}