IOS编程教程(八):在你的应用程序添加启动画面

 

虽然你可能认为你需要编写闪屏的代码,苹果已经可以非常轻松地把它做在Xcode中。不需要任何编码。你只需要做的是设置一些配置。

什么是闪屏

对于那些新学代码的人,可能没有听说过“闪屏”把,让我先作一个简单的解释。闪屏是常见于iOS应用程序,以及其他桌面应用程序。这是你启动一个应用程序时,你看到的第一个画面。通常情况下,初始屏幕是一个覆盖整个屏幕的图像,消失后加载主屏幕。下图显示了几种闪屏:

简单闪屏(开始页面)

闪屏的主要目的是为了让用户知道你的程序在加载,并给用户提供一个介绍性屏幕,显示你的品牌。开机画面是特别重要的应用程序,需要更长的时间来启动。而且,它提供了更好的用户体验。

在你的应用程序里添加闪屏

正如前面提到的,它不需要编写任何代码来显示启动画面。iOS带有一个内置的函数叫做launch image(启动图片)。此图片当用户打开应用程序时,会自动显示直到应用程序是完全准备好使用后消失。在Xcode你可以简单地指定启动闪屏图像,它会处理你剩下的工作。

准备闪屏

正如你所知道的,,iPhone 4/4S支持更高的屏幕分辨率(叫做视网膜屏幕)。为了支持这两种屏幕,分辨率为旧的iPhone机型和最新的车型,你必须准备两个版本的启动画面图像,这些大小分别为:

>320x480(For iphone2G/3G/3GS)

>640x960(for iphone 4/4s)

为了简单起见,我将告诉你如何在iPhone应用程序添加启动画面。如果你正在建立一个iPad应用程序,您可以参考苹果iOS关于启动画面尺寸的介绍和人机接口指南命名约定。

闪屏图像是PNG格式。默认情况下,对于较低的屏幕分辨率你的图像文件应命名为“Default.png”。对于图像用于视网膜显示(即640×960屏幕分辨率),将文件命名为为Default@2x.png “。在iOS,“2倍”是一个标准比例。所有用于视网膜屏幕的图片将用“@2x”作为后缀命名。

如果你不行用"Default"作为你的启动图片名的话,你可以改变你的首选。启动图片名称在你的应用程序里的Info.plist设定。使用简单的表应用程序作为一个例子,你可以添加新的属性称为“Launch image(启动映像)”到SimpleTable的Info.plist,并指定值(例如,MyLaunchImage)。

然后程序将用“MyLaunchImage.png”和“ MyLaunchImage@2x.png “作为启动图像。

你可以设计自己的启动画面。

我们的简单表应用程序的闪屏

往XCode里添加启动图片

准备好启动图像后,返回到Xcode,打开你的Xcode项目。在这里,我们将继续使用我们的简单表项目。右键单击“SimpleTable”项目,并选择“添加文件到SimpleTable”。将命名好的“Default.png”和“ Default@2x.png “ 添加到项目中。

将文件添加到Xcode项目

如果你所做的一切都是正确的话,你会看到这两个文件在您的项目中,Xcode自动识别该图片作为启动图像。

在Xcode中添加启动图片

开始测试把

再次运行您的应用程序。这个时候,你会看到一个闪屏瞬间显示。现在,在应用程序启动加载时没有太多的事情,故花费的时间不多。(注:初始屏幕只显示了一秒钟,消失了。)

 

IOS编程教程(八):在你的应用程序添加启动画面的更多相关文章

  1. 在iOS App 中添加启动画面

    你可以认为你需要为启动画面编写代码,然而Apple 让你可以非常简单地在Xcode中完成.不需要编写代码,你仅需要在Xcode中进行一些配置. 1.什么是启动画面(Splash Screen)? 启动 ...

  2. ASP.NET + MVC5 入门完整教程八 -—-- 一个完整的应用程序(上)

    https://blog.csdn.net/qq_21419015/article/details/80509513 SportsStore 1.开始创建Visual Studio 解决方案和项目这里 ...

  3. 黑客编程教程(十三)多线程DOS程序

    DOS基本原理相信大家都已经很熟悉了,DOS工具大家也用的很熟悉.在群里 经常有人说什么时候去DOS什么东西. 现在我们就自己编写一个DOS工具. #include <winsock2.h> ...

  4. ASP.NET + MVC5 入门完整教程八 -—-- 一个完整的应用程序(下)

    https://blog.csdn.net/qq_21419015/article/details/80802931 SportsStore 1.导航 添加导航控件 如果客户能够通过产品列表进行分类导 ...

  5. VC++编程中为程序加入启动画面功能

     如何为自己的程序加入启动画面 观察我们平常使用的软件,当我们双击软件的时候,会在主界面出现前,先行出现一个启动画面,由于前一阵子写了一个基于对话框的程序,亲自实验了下,今天就为大家简单的介绍下,在我 ...

  6. [Xcode 实际操作]八、网络与多线程-(21)延时启动画面:使用Thread线程对象的延时方法

    目录:[Swift]Xcode实际操作 本文将演示如何使用线程对象的延时方法,让线程休眠一段时间,暂停动作的执行. 在项目导航区,打开启动画面的故事板[LaunchScreen.storyboard] ...

  7. 【VC编程技巧】窗口☞3.5对单文档或者多文档程序制作启动画面

    (一)概要: 文章描写叙述了如何通过Visual C++ 2012或者Visual C++ .NET,为单文档或者多文档程序制作启动画面.在Microsoft Visual Studio 6.0中对于 ...

  8. ios 应用程序图标、启动画面、itune图标设置

    http://blog.sina.com.cn/s/blog_4cd8dd1301014hfz.html 先说说应用程序图标,一般有下面几种: Icon.png(57x57) - Homescreen ...

  9. IOS 启动画面和图标设置(适配IOS7 and Xcode5)

    关于IOS程序设置启动画面以及图标的设备目前主要为:IPhone设备 和IPad设备 IPhone启动画面以及图标的设置 目前IPhone的分辨率为:320X480.640X960.640X1136. ...

随机推荐

  1. JDK 高性能编程之容器

    高性能编程在对不同场景下对于容器的选择有着非常苛刻的条件,这里记录下前人总结的经验,并对源码进行调试 JDK高性能编程之容器 读书笔记内容部分来源书籍深入理解JVM.互联网等 先放一个类图util,点 ...

  2. Windows 已在 DImageProcess.exe 中触发一个断点。

    其原因可能是堆被损坏,这说明 DImageProcess.exe 中或它所加载的任何 DLL 中有 Bug. 原因也可能是用户在 DImageProcess.exe 具有焦点时按下了 F12. 输出窗 ...

  3. Java面向对象编辑

                      1.面向对象的软件开发方法简介:            1).把软件系统看成是各种对象的集合,更接近人类自然思维方式.      2).软件需求的变动往往都是功能的 ...

  4. 使用正则表达式给网址添加a标签

    在内容中存在链接地址的时候,我们在前台显示时一定想自动的将地址添加上a标签,方便用户进入链接.使用正则表达式就能轻松实现. Jsvascript正则替换 //javascript 正则替换 var s ...

  5. java基本打印练习《我行我素购物系统》

    public class ShoppingSystem{ public static void main(String[] args){ //System.out.println("**** ...

  6. JSP九个隐式对象及作用域

    out:JspWriter实例对象,作用域为page(页面执行期) 向客户端输出内容 request:HttpServletRequest实例对象,作用域为request(用户请求期) 请求信息 re ...

  7. ANDROID内存优化(大汇总——中)

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 写在最前: 本文的思路主要借鉴了2014年AnDevCon开发者大会的一个演讲PPT,加上 ...

  8. nginx 配置轮询服务

    通常我们应用nginx做代理时,用到它的轮训服务 #设置轮询名称 upstream zyy{ server 127.0.0.1:8080  #本机的apache服务 } server { listen ...

  9. hdu 2105

    #include <iostream> #include <stdio.h> using namespace std; int main() { double a,b,c,d, ...

  10. 《Java编程思想》之重点笔记——多态性理解

    Java中除了static方法和final方法(private方法本质上属于final方法,因为不能被子类访问)之外,其它所有的方法都是动态绑定,这意味着通常情况下,我们不必判定是否应该进行动态绑定— ...