公司之前的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. Leetcode049. Group Anagrams

    //hashmap implement with STL class Solution { public: vector<vector<string>> groupAnagra ...

  2. select,poll,epoll的归纳总结区分

    Select.Poll与Epoll比较 以下资料都是来自网上搜集整理.引用源详见文章末尾. 1 Select.Poll与Epoll简介 Select select本质上是通过设置或者检查存放fd标志位 ...

  3. leetcode 6

    题目描述: 该开始就输在了理解题意上.. 没搞懂zigzag是什么意思. 查了一些解释终于明白要干什么了.     将一个字符串按照Z字形排列(侧着看):再把结果按行输出. 刚开始的想法是讲字符串按照 ...

  4. 用AsyncTask 来实现下载图片在android开发中

    Android使用AsyncTask 有如下好处: 1. 线程的开销较大,如果每个任务都要创建一个线程,那么应用程序的效率要低很多: 2. 线程无法管理,匿名线程创建并启动后就不受程序的控制了,如果有 ...

  5. 网络基础知识、ASP.NET 核心知识(1)*

    为什么要写网络? 我原本的计划是这样的,连续两天梳理ASP.NET开发的核心知识.说到这呢,有人问了.“不是说好了做ASP.NET笔记吗?为啥要写网络基础知识?是不是傻?” 原因是这样的.作为网站开发 ...

  6. dwz简单配置与操作

    1.首先将dwz的文件放到你的项目中(http://yunpan.cn/QbTH4kN6UXX9B) 2.在页面中将前台数据复制到页面中,将js,css等路径配置好 3.这个地方一定要配置好,xml文 ...

  7. 设置ShowDialog

    1.在winform窗体中的button控件,可以直接设置DialogResult属性为OK或者Cancel来控制其他窗口中调用此窗口需要验证DialogResult结果是OK还是其他....

  8. 如何消除选定TextBox后的光标但又不失去焦点。

    情景描述: 选择TextBox里的内容 Name:textTile 但是没有光标. 相关实现代码: [DllImport("user32", EntryPoint = " ...

  9. mariadb数据库备份学习笔记

    备份类型: 完全备份 部分备份:仅备份其中的一张表或多张表 增量备份:仅备份从上次完全备份或增量备份之后变化的数据部分 热备份:在线备份,读写操作不受影响 温备份:在线备份,读操作可继续进行,但写操作 ...

  10. jquery美化select,自定义下拉框样式

    select默认的样式比较丑,有些应用需要美化select,在网上找到一个很好的美化样式效果,本人很喜欢,在这里分享一下. <!DOCTYPE html PUBLIC "-//W3C/ ...