公司之前的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. 未来十年的十三条思考(FW)

    支付宝在某种意义上延续了“双十一”的购物狂欢. 如果你关注微信朋友圈,你会发现支付宝最近以各种广告.方案植入方式推出强劲广告.而其中很重要的一个促销手段便是,从今年12月1日到12月15日,用户在一些 ...

  2. dll显式加载与隐式加载

    使用动态DLL有两种方法,一种是隐式链接,一种是显式链接,如果用loadlibrary就是显示链接,用lib就属于隐式链接. 两种方法对于你的程序调用动态库时没有任何区别,只是你在编程时,步骤是不一样 ...

  3. 【Linux】freetds安装配置连接MSSQL

    我使用的是freetds-0.91,下载地址:http://pan.baidu.com/s/1hq68rZY 安装编译(根据需要unixodbc): [root@zabbixserver / ]# t ...

  4. MyBatis学习系列二——增删改查

    目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring 数据库的经典操作:增删改查. 在这一章我们主要说明一下简单的查询和增删改, ...

  5. PHP开发大型项目的一点经验

    一.变量 最好是把所有的变量存储在一个数组中,这样在程序的开发中可以带来很多的方便,特别是当程序很大的时候.变量的命名就当适合自己的习惯,不管是用拼音还是英语,至少应当有一定的意义,以便适合记忆.变量 ...

  6. jquery.form.js实现将form提交转为ajax方式提交的使用方法

    本文实例讲述了jquery.form.js实现将form提交转为ajax方式提交的方法.分享给大家供大家参考.具体分析如下: 这个框架集合form提交.验证.上传的功能. 这个框架必须和jquery完 ...

  7. 软件工程 speedsnail 冲刺7

    2015-5-11 完成任务:蜗牛移动的一部分: 遇到问题: 问题1 速度,坐标,角度: 速度分级别设置: 坐标记录功能,方便障碍物检测: 暂定初始45度角: 解决1 未解决上述问题 明日任务: 蜗牛 ...

  8. 数据包判断是否丢包 ping+tracert+mtr

    1.用咱们最常用的Ping命令来查看是不是真的丢包了 这里可以看到数据包发送了4个,返回了4个,丢失=0  证明没有丢失 也有可能中间路由做了策略不给ICMP的回应 这样就ping没法判断了  正常情 ...

  9. Html5元素及基本语法

    HTML标签开始标签(opening tag):开放标签结束标签(closing tag):闭合标签 元素定义:HTML元素指的是从开始标签到结束标签的代码(元素以开始标签为起始以借宿标签终止)元素的 ...

  10. JQuery ajax返回JSON时的处理方式

    最近在使用JQuery的ajax方法时,要求返回的数据为json数据,在处理的过程中遇到下面的几个问题,那就是采用不同的方式来生成json数据的时候,在$.ajax方法中应该是如何来处理的,下面依次来 ...