先上效果图: 假设 tab bar items 有5个.tag为0,1,2,3,4.storyboard中tab bar controller继承的class叫做xxxVC. class xxxVC: UITabBarController { var storedImageViewArr:[UIImageView?] = [] private var times = [Int].init(repeating: 0, count: 5) private var tempTimes = [Int].…
概述 从写第一篇Swift文章的时候到现在Swift已经从1.2发展到了今天的3.0,这期间由于Swift目前还在发展阶段并不能向下兼容,因此第一篇文章中的部分代码在当前的Xcode环境中已经无法运行.在WWDC16上Apple公布了Swift3.0,从中可以看出Apple对Swift的重视,以及Swift开源半年以来的进步.尽管对于开发人员来说Swift3.0的变化会令你的程序几乎处处报错,但是试想一下如果Apple没有追求极致的精神又怎么会做出如此多的更改.今天的文章将重点介绍:What's…
一.编译器和语法变化 函数或方法参数 调用函数或方法时从第一个参数开始就必须指定参数名 在Swift的历史版本中出现过在调用函数时不需要指定任何函数参数(或者从第二个参数开始指定参数名),在调用方法时则必须从第二个参数开始必须指定参数名等多种情况,而在Swift3.0中不管是函数还是方法都必须从第一个参数开始必须指定参数名(当然可以使用"_"明确指出调用时省略参数). // 从第一个参数就必须指定参数名,除非使用"_"明确指出省略参数 func sum(num1:I…
转自:http://www.jianshu.com/p/96a7db3fde00 WWDC 2015 宣布了新的 Swift 2.0. 这次重大更新给 Swift 提供了新的异常处理方法.这篇文章会主要围绕这个方面进行讨论. 如何建造异常类型? 在 iOS 开发当中,我们会面对很多异常处理.在 Cocoa Touch 中我们使用 NSError 来进行异常处理.在新的 Swift 2.0 中,我们可以使用新的 ErrorType protocol. 在 Swift 中, enum 是最好的方法建…
无论你是移动开发者,还是桌面端开发者,或者正在IoT领域探索的技术人员,那么应该更加关注 iDev 全平台开发者大会,也许是后半年 iOS 开发者最盛大的技术盛宴.既有知名公司带来专业视野,又有从 Swift 到函数式编程.HomeKit, watchOS 开发. macOS 内核探索等技术分享,非常值得去听一听.PS:fir.im 为大家争取了当前票价款额外 8 折优惠,感兴趣的朋友去这里购买. 除此之外,本期 fir.im Weekly 重点整理了关于 swift3 适配.开发.迁移的实战经…
[编者按]2015年6月,一年一度的苹果 WWDC 大会如期而至,在大会上苹果发布了 Swift 2.0,引入了很多新的特性,以帮助开发者更快.更简单地构建应用.本篇文章作者是 Maxime defauw ,本文中 Maxime 向大家简要介绍 Swift 2.0 中值得注意的新特性.本文系 OneAPM 工程师编译整理. 一年前,苹果推出了面向 iOS 和 OS X 的全新编程语言-- Swift.当听到它发布的时候,像千千万万 iOS 开发者那样,笔者的内心激动无比.正如宣传所说的那样,作为…
Swift 2.0 异常处理 WWDC 2015 宣布了新的 Swift 2.0. 这次重大更新给 Swift 提供了新的异常处理方法.这篇文章会主要围绕这个方面进行讨论. 如何建造异常类型? 在 iOS 开发当中,我们会面对很多异常处理.在 Cocoa Touch 中我们使用 NSError 来进行异常处理.在新的 Swift 2.0 中,我们可以使用新的 ErrorType protocol. 在 Swift 中, enum 是最好的方法建立属于你自己的异常类型,你只要在你的 enum 中确…
在移动开发中,Android开发一直比较受欢迎的原因之一就是其是一个开源的,有很多开源项目.代码可以用,这也是很多iOS开发者羡慕不已的地方.但值得庆贺的是,随着swift编程语言的发展,北京时间12月4日,苹果正式宣布Swift面向所有开发者开源,哇咔咔~~ 对于iOS开发者而言,这意味着什么呢?即日起,感兴趣的开发者们可以在Swift.org和GitHub下载源代码和各种研发工具,所有开发人员都可以用可以用swift语言做多版本游戏研发,当然他们也必定将对swift未来的发展做出重要的贡献和…
刚执行完Convert后报错600+,真是令人奔溃. 之后重新编译,仔细分析后发现其实真实错误远没有那么多.最终实际修改到的错误也就几十个,而且其中某些还是同一种错误. 这个项目是一个供自己使用的浏览器项目,因为app store上的浏览器都不支持自动锁定横屏,所以自己做了一个简单的浏览器(支持自动锁定横屏/竖屏)供自己使用. 主要一些修改: 这个自动修复就好了 [报错信息] "Use Legacy Swift Language Version" (SWIFT_VERSION) is…
Swift 3.0 版本去掉了沿用已久的 C 风格循环语法, 又是向现代开发语言的一次迈进, 咱们就来看看没了 C 风格循环我们还有什么选择 C 风格循环 关于 C 风格循环, 不我们过多介绍了, 就是类似这样的语句: let numberList = [, , , , ] ; i < numberList.count; i++ { } 如今这样的语法在新版本的 Swift 中即将成为历史了, C 风格的循环语法可能是大家最熟悉的, 大家会不会觉得突然去掉这个语法有些不适应呢? 咱们再来看看 S…