文档章节

IOS 启动页面制作

xiahuawuyu
 xiahuawuyu
发布于 2013/10/15 22:51
字数 562
阅读 7.4K
收藏 14

如果想程序刚启动时显示启动页(logo页),并且启动页全屏显示,程序加载完成后又显示状态栏,需要做如下三步:

  • 启动页其实只是一张图片而已,如果你的程序需要兼容 iPhone3 和 iPhone4,那么要制作对应分辨率的图片,iPhone3 为 480 * 320,iPhone4 为 960 * 640。分别命名为 Default.png 和 Default@2x.png,然后都放在工程下(可以放到子目录中)。这样程序启动时会默认的去加载。
  • 在<AppName>-info.plist 文件中加入选项 "Status bar is initially hidden", 值为 YES

  • 在 AppDelegate.m 文件中的 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 方法内加入代码:   [[UIApplication sharedApplication] setStatusBarHidden:NO];


如果还想让启动页保持一定时间以便让用户看清楚启动页的内容(启动页一般显示公司logo等信息),可以在 AppDelegate.m 文件中的 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 方法内加入延时代码:

    [NSThread sleepForTimeInterval:2.0];  //这里延时两秒


【注意】

如果你的程序同时使用了导航栏作为根视图控制器 UINavigationController,则应该将语句 [[UIApplication sharedApplication] setStatusBarHidden:NO] 放在 [self.window makeKeyAndVisible]; 之前,否则会出现状态栏与导航栏重叠的情况。可能是因为调用 makeKeyAndVisible 时会去判断当前程序是否显示状态栏,以此来布导航栏的位置。

如下代码会导致导航栏与状态栏重叠:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];

[NSThread sleepForTimeInterval:2.0]; //延时2秒,以便用户看清楚启动页

LoginController *login = [[[LoginController alloc] initWithNibName:@"LoginController" bundle:nil] autorelease];
self.navController = [[[UINavigationController alloc] initWithRootViewController:login] autorelease]; //初始化导航栏控制器
self.window.rootViewController = self.navController;

[self.window makeKeyAndVisible];
[[UIApplication sharedApplication] setStatusBarHidden:NO]; //启动完成后显示状态栏,该语句放在 makeKeyAndVisible 之后会导致状态栏与导航栏重叠

return YES;
}

以上代码应该改为:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];

[NSThread sleepForTimeInterval:2.0]; //延时2秒,以便用户看清楚启动页

LoginController *login = [[[LoginController alloc] initWithNibName:@"LoginController" bundle:nil] autorelease];
self.navController = [[[UINavigationController alloc] initWithRootViewController:login] autorelease]; //初始化导航栏控制器
self.window.rootViewController = self.navController;

[[UIApplication sharedApplication] setStatusBarHidden:NO]; //启动完成后显示状态栏,该语句应该放在 makeKeyAndVisible 之前
[self.window makeKeyAndVisible];

return YES;
}

【参考】

http://www.cocoachina.com/bbs/read.php?tid=99012&page=1

本文转载自:http://blog.csdn.net/chuchu521/article/details/8256136

xiahuawuyu
粉丝 104
博文 648
码字总数 713479
作品 0
浦东
技术主管
私信 提问
加载中

评论(2)

小_小段
小_小段
图片怎么加
小_小段
小_小段
你呀的。。能不能写清楚...都没图
移动开发者的工具宝箱 | iOS 证书在线检测

作为一名开发者,灵活运用各种开发工具无疑能让开发效率大大提升,事半功倍。蒲公英作为各位开发者的坚实后盾,为大家准备了内容齐全的「工具箱」,移动应用开发者常用的工具都可以在这里快速...

蒲公英开发者服务平台
2019/07/25
0
0
界面UI/H5页面/logo设计/

手机ui界面设计制作移动应用ios手游软件APP交互网页整站 588/页起 手机ui界面设计制作移动应用ios手游软件APP交互网页整站 588/页起 手机ui界面设计制作移动应用ios手游软件APP交互网页整站 ...

埃迪森品牌设计
2016/04/25
22
0
xFace的快速入门--IOS

ios系统的快速入门和Android的大部分都差不多,模拟器这部分是一样的,只是player的使用上有点区别,今天就来看看ios设备的快速入门。 1、下载工具 便携版模拟器Emulator(Windows) 下载地址...

xFace3
2013/12/03
287
0
迈绝伦团队工作汇总

项目负责人:余志恒 up_java后台:暂无更新 mz_java后台:完善建材发布功能 bwk后台:暂无更新 项目负责人:季景胜 up_Android:暂无更新 upzg_Android:暂无更新 mzqk_Android:新增会员兑换...

风化的骆驼
2016/12/09
3
0
泄露 iOS 9 关键源码 iBoot 的人,居然是苹果的实习生

之前苹果公司确认自家的 iOS 9 部分源代码被泄露到 GitHub 上,大家惊呼怎么可能发生这种可怕的事情,外媒 Motherboard 再次深入调查了解背后的故事,最终他们找到了上传源代码的匿名人士,并...

局长
2018/02/11
8K
27

没有更多内容

加载失败,请刷新页面

加载更多

一款提升IT运维工作效率的工具,你值得拥有!

IT运维的工作内容主要是负责服务器硬件配置、独立主机或虚拟化产品的开通维护、服务器日常运行监控和管理等,具体的要看企业对这个岗位的要求。 而像运维这样的岗位,我个人是推荐可以使用一...

欢乐马在开源
26分钟前
44
0
IDEA 多线程Debug

一、问题描述 在idea中的进行调试时,代码中有多线程,想对线程中的代码进行跟踪,代码如下: for (int i = 0; i < 5; i++) { final int index = i; exec...

Airship
30分钟前
19
0
jenkins 插件加速

参考:https://my.oschina.net/VASKS/blog/3106314 主要是自己创建一个nginx, 让jenkins从清华源下载。 以下是创建nginx的Dockerfile Dockerfile FROM nginxADD nginx.conf /etc/nginx/ngi......

杰仪
31分钟前
43
0
五分钟自学编程:怎样才能学好笔试面试最爱考察的算法

原创声明 本文作者:黄小斜 转载请务必在文章开头注明出处和作者。 本文思维导图 什么是算法 上回我们有一篇文章,讲述了作为一个新人程序员,如何学习数据结构这门课程,其实呢,数据结构和...

黄小斜
34分钟前
24
0
面试题 11:旋转数组的最小数字

题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋...

Oaki
40分钟前
50
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部