公司之前的APP呢经过了两次重写,都是使用OC由本人独立开发的,不过这些东西我都不好意思说是自己写的,真心的一个字:丑!!! 客观原因来说主要是公司要的特别急,而且注重的是功能而非效果,公司的美工之前也没做过APP之类的工作;但是从主观方面来说还是对自己的要求有些低了,所以,这两天思考许久,打算在公司的事情不多的闲暇点的时间学习写Swift,顺带把之前的项目再次重写一下.

闲话不说了,先创建一个swift的项目

创建完毕之后,退出程序,因为我们这里使用cocoapod来管理项目,至于cocoapod如何安装以及使用,这个不是本文的范围之类,大家百度即可.

在终端键入pod install等待pod安装完毕第三方类库以及配置好参数之后,我们ComeAndGoSwift.xcworkspace来打开项目,否则可能造成编译报错..

然后本人的重点来了,如何设置项icon与launchImage

① 首先我们说一下icon,其实一个完整的项目icon需要很多,这个至于需要哪些看客们可以去百度了解,我这里直接说最简单的方法,请大家访问https://github.com/rickytan/RTImageAssets 来下载这个Xcode插件,然后运行此程序,再重启Xcode,一般情况下的xcode插件都是这么安装的,但是现在由于升级到Xcode7.1之后,只这样做是不够的,还无法使用插件,那么如何解决呢,这里转摘一下(http://blog.csdn.net/oiken/article/details/49123365这篇博文的方法,这兄弟好像也是转来的),他的方法是:

1.打开xcode插件所在的目录:
~/{当前用户名}/library/Application Support/Developer/Shared/Xcode/Plug-ins
2.选择已经安装的插件例如VVDocument,右键点击“打开包内容”,
3.找到info.plist 文件,找到DVTPlugInCompatibilityUUIDs的项目,
4.添加C4A681B0-4A26-480E-93EC-1218098B9AA0(当前xcode的一个号码),这个号码怎么得到?
 在终端执行 defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID 即可
5.再右键“打开包内容”双击contents\MacOS目录下的一个黑色图标,会打开终端窗口,最后打印“进程已完成”之类,重启xcode
 
但是根据我操作来看,第一步的当前用户名貌似不用 第三四步中其实我自己的电脑上Plist文件里的号码已经存在,大家根据自己情况来,所以基本上我觉得有效的估计也就第五部,运行一下那个目录下的黑色图标..
当运行完毕之后,重启Xcode,你会发现在顶部菜单的File目录可以找到这个菜单:ImageAsset,在他的子菜单中选择AppIcons,点击运行,出现一个窗口,然后拖进去一个1024*1024的图片(你的APP的Icon图片) 然后点击右上角的Generate,你会发现,你的项目中的icon目录下多了好多的图片.至此你的AppIcon已经设定完毕..
 
② 然后我们需要设置转场动画了,这个其实有两种方法,在iOS8及以后可以使用系统默认生成的LaunchScreen.storyboard文件利用sizeclass方案来做,但是这种方式在iOS8之前是无效的...还有另外一种方法是比较老的方法,也就是LaunchImage的方式来做...
   我这个项目需要做的是iOS7及之后的适配,所以我需要放入的图片格式就是下面图中列举的五种分辨率:
  
    当你把图片按照位置放好后 ,运行项目,但是你会郁闷的发现,貌似这些图片没有出现啊,那么如何解决呢,请看以下步骤:
  
  图中的1 2 是需要大家设置的,把Launch Images Source设置为你之前创建或者系统默认生成的装5张图片的那个文件夹的名称,你甚至可以点击一下后面的小灰点看看是否定位到你的目录去,然后把Launch Screen File清空,默认的一般还会是那个xib文件..至此,再运行程序应该就可以看到你们那可爱的LaunchImage图片了...当然在有些时候,转场图片消失太快,在进入程序首页的间隙会有白色的屏幕出现,这样用户感官不好,那么,此时我们可以在程序的第一个控制器中写上如下代码:
 
OK,明天接着来..此篇到此为止
预告:明天主要着手在使用Swift如何调用OC的类库,也就是如何搞定bridge文件,还有就是由于此项目是基于百度地图的一个应用,所以,还有会百度地图相关的一些内容.

用Swift重写公司OC项目(Day1)--程序的AppIcon与LaunchImage如何设置的更多相关文章

  1. 用Swift重写公司OC项目(Day2)--创建OC与Swift的桥接文件,进而调用OC类库

    昨天把项目中的图标以及启动转场图片弄好了,那么今天,我们可以开始慢慢进入到程序的编写当中了. 由于swift较新,所以类库还不够完善,但是不用担心,苹果早就出了解决方案,那就是使用桥接文件,通过桥接文 ...

  2. 在OC项目工程中混编Swift

    1.创建一个OC项目工程,然后在Build Settings中找到如下字段,修改. 2.然后在项目中创建swift文件,如果系统提示是否需要创建桥接文件的时候,点击确定. 然后在Build Setti ...

  3. 关于OC和Swift使用GIT创建项目

    1.先进入码云,点击自己的头像 ->   ,2.里面有一个SSH公钥,点击   ,3.之后在终端输入 ssh-keygen -t rsa -C “xxxxx@xxx.com”,注意:”” 要用英 ...

  4. 在Swift项目中使用OC,在OC项目中使用Swift

    几天前,我开始新的App的开发了.终于有机会把swift用在实战中了,也学到了之前纯学语法时没有机会获得的知识. 这篇博文中,我就如何使用swift.OC混编做一个介绍. OC中使用Swift 首先, ...

  5. OC项目加入swift第三方库遇到的坑

    https://www.jianshu.com/p/96d868dcd69c 2017.07.07 16:23* 字数 295 阅读 5218评论 2喜欢 4 首先,在OC项目的Podfile文件中添 ...

  6. OC项目中使用Swift

    1.在OC工程中新建 Swift 文件,会提示的是否创建一个桥接文件,创建不创建都无所谓,这个桥接文件主要是用来包含OC头文件的,主要用于Swift中使用OC         2.在Person.sw ...

  7. 图解使用VS的安装项目打包程序

    背景 这段时间一直在做客户端程序的打包程序,遇到各种坑.因为以前没有任何这方面的经验,历经各种折腾,费尽九牛二虎之力总算是完成了. 虽然没有太多技术含量,但是因为挺繁琐的,所以还是在此记录一下. 由于 ...

  8. 将React Native 集成进现有OC项目中(过程记录) 、jsCodeLocation 生成方式总结

    将RN集成到现有OC项目应该是最常见的,特别是已经有OC项目的,不太可能会去专门搞个纯RN的项目.又因为RN不同版本,引用的依赖可能不尽相同,所以特别说明下,本文参考的文档是React Native ...

  9. Swift & Objc 在同一个项目中的使用

    在WWDC大会中发布了Swift让人眼前一亮.终于加了很多的现代编程语言该有的东西.很早年以前玩C#3.0+的时候这些差不多类似的 已经用的烂熟的东西终于一点一点的在看Swift Programmin ...

随机推荐

  1. ASPXGridView用法

    一.ASPXGridView外观显示 属性: Caption----列的标题( KeyFieldName----数据库字段 SEOFriendly 是否启用搜索引擎优化 Summary 指定分页汇总信 ...

  2. ASPxCallback控件

    ASPxCallback控件简单来的来说是一个数据回调控件,即不刷新事个页面来展现数据,主要是通过注册客户端事件与服务器端的事件来相互通信完成任务. 如何使用ASPXCallback: 向页面添加Ca ...

  3. com组件 智能指针崩溃问题崩溃问题

    int main(){ CoInitialize(NULL); HRESULT hr; IWinHttpRequestPtr pHttpReq=NULL; pHttpReq.CreateInstanc ...

  4. MVC 百度地图的基本使用

    最近做的这个项目里面为了方便路线查询,将百度地图的插件加到了项目里,效果图如下: 下面我就把我的步骤贴出来: 第一步:进网站 http://developer.baidu.com/map/注册 第二步 ...

  5. C++三种内存分配方式

    从静态存储区域分配:内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量,static变量.静态分配的区域的生命期是整个软件运行期,就是说从软件运行开始到软件终止退出.只 ...

  6. 【Linux】Zabbix + MPM + msmtp + mutt 监控MySQL + 邮件报警

    Zabbix部署参考博文 http://blog.sina.com.cn/s/blog_5611597901017oe0.html  MPM安装配置参考博文和MPM官网下载地址 http://blog ...

  7. 理解python先编译后解释的特点

    1. CPython默认的标准解释器编译器.JPython支持Java集成,可以生成Java字节码并在JVM中解释执行.IronPython支持.NET集成. 2. 下次运行程序时,python自动检 ...

  8. Sunglasses

    It's hot this summer. It also reminds me of one case about sunglasses. She was new to this company a ...

  9. 事件委托和this

    JavaScript不仅门槛低,而且是一门有趣.功能强大和非常重要的语言.各行各业的人发现自己最混乱的选择是JavaSscript编程语言.由于有着各种各样的背景,所以不是每个人都对JavaScrip ...

  10. javaSE第十三天

    第十三天    76 1. StringBuffer(掌握)    76 (1)说明:    77 (2)StringBuffer的构造方法    77 (3)StringBuffer的常见功能    ...