项目迁移swift3.0和swift3的坑

项目开始3迁移


  • 1 . 升级xcode8.1正式版


    项目迁移swift3.0和swift3的坑_第1张图片
    xcode8.1
  • 2 . 打开项目, 打开xcode自带的桥接工具, Edit-Convert-To Current Swift Syntax..


    项目迁移swift3.0和swift3的坑_第2张图片
    xcode自带的桥接工具
  • 3 . 选择swift 3 -> next, 选择.app -> next(检测代码)


    项目迁移swift3.0和swift3的坑_第3张图片
    swift 3.0

    项目迁移swift3.0和swift3的坑_第4张图片
    选择.app
  • 4 . 左边的代码是swift3的代码, 右边代码是需要转换的代码, 点击save


    项目迁移swift3.0和swift3的坑_第5张图片
    开始转换代码

项目迁移swift3.0问题总结


一 . 声明Block(也就是闭包)

  • 错误的声明
// 错误的声明
typealias clickButtonFunction = ()->Void
var clickButtonBlock = clickButtonFunction!()
// 错误的使用
clickButtonBlock!()
  • 正确的声明
// 声明Block/闭包
var clickButtonBlock:()->() = {}
// 使用Block/闭包
clickButtonBlock()

二 . 多个view设置显示居中

  • 错误
NSLayoutFormatOptions.alignAllBaseline
  • 正确
NSLayoutFormatOptions.alignAllFirstBaseline

三 . 其他问题

原文链接

  • 发现有个别问题无法解决,一直解决也是没有成效,于是使用目前来说最简洁的方法就重新建立工程.
  • 先把新建的工程集成好最新支持Swift3.0的第三方框架,测试程序可不可以跑通后,再把之前转换完的代码一个分类一个分类迁移到新的工程里面.
  • 至于手工拖入的第三方依赖库,应用跳转,按照之前集成好的照搬.或者重新集成.

Apple Swift 3.0官方文档

你可能感兴趣的:(项目迁移swift3.0和swift3的坑)