我是iPhone的新宠.在加载UIViewController之前,我已经使用了一些教程,一个启动画面.现在我想在我的应用程序中实现一个NavigationController,并希望在它之前显示一个Splash Screen.因为我是Iphone的新手,所以在加载根导航控制器之前我没有得到任何tutotrials或指南来制作启动画面.
我见过很多方法,他们过度编写Default.png文件等等.我不想实现那个.我想要一个sperate UIView在其中包含我的自定义图像和文本,并将UI视图显示为启动画面
任何人都可以指导我.
提前致谢
使用" 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];
}
Run Code Online (Sandbox Code Playgroud)
伙伴们,伙计.玩得开心,编码愉快....
- (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];
}
Run Code Online (Sandbox Code Playgroud)