文档章节

Swift 2中的available属性

q
 qqzhao2010
发布于 2015/11/20 16:50
字数 207
阅读 27
收藏 0

系统版本

@available(iOS 9.0, *)
func test_other(){
    
    Defaults[DefaultsKeys.tmpString]
    Defaults[.tmpString]
    
    Defaults[.tmpString2]
}

上面的例子,@available通常用于函数或者变量前面,指定可以利用的版本号码。如果当前系统最低版本低于上面要求的版本,则会在编译函数的时候出错。使用系统提示进行代码替换,如下:

if #available(iOS 9.0, *) {
        test_other()
    } else {
        // Fallback on earlier versions
    }

#available可以用作系统判断版本。

deprecated提示


@available(*, deprecated=1, message="Please migrate to static keys to use this.")
func test_deprecated(){
    
    //do sth.
}

如果加入上面的语句,则再使用函数test_deprecated()的时候,会出现一个警告,提示就是"Please migrate to static keys to use this."。如果设置deprecated=0,则不会出现。

参考文章

Swift 2 and @available properties

http://wiki.jikexueyuan.com/project/swift/chapter2/05_Control_Flow.html#1f30da534b3c6f8fc80b7a4046869a29

© 著作权归作者所有

共有 人打赏支持
q
粉丝 0
博文 150
码字总数 42625
作品 0
海淀
程序员
私信 提问
Swift互用性:采用Cocoa设计模式(Swift 2.0版)

Swift互用性:采用Cocoa设计模式(Swift 2.0版) Using Swift with Cocoa and Objective-C:采用Cocoa设计模式(Swift 2.0版更新) 本页包含内容: 委托(Delegation) 错误处理(Error Han...

法斗斗
2016/03/01
13
0
Swift Tips:常用的知识点总结(持续更新...)

前不久发布,感觉差不多快趋于稳定了,就在工作之余把拿出来重新看了一下,总结一些常用的知识点。话说好记性不如烂笔头,放在这忘记的时候还可以拿出来瞅瞅,免得遗忘的时候到处查找,这里与...

HenryCheng
2016/06/22
0
0
NS_ASSUME_NONNULL_BEGIN & NS_ASSUME_NONNULL_END

写在前面的话,很久没写技术文章了。自己一直对于系统的很多语法很好奇,就是系统的宏定义语法,不知道干什么的,今天研究一下,以后可以能继续的追加。错误的地方请大神指正留言,我会尽快的...

贝勒老爷
前天
0
0
iOS 开发框架--EasyIOS-Swift

EasyIOS 开源至今已经1周年,全新Swift版本今日发布,支持利用HTML来开发IOS应用,支持模拟器实时预览,基于MVVM思想,HTML数据绑定,反射所有 CocoaTouch API。 EasyIOS 再一次加速 IOS 开发...

墨水
2015/05/27
6.7K
0
Swift3.0新特性和改动

前两天的WWDC 2016上苹果发了:Swift 3.0 Preview 1 Released!,这次更新了44个特性。有增删一些语法得,有改动的,自己从Swift2和Xcode6开始学习Swift一直很喜欢这门语言。也总是看别人的东...

任杰LL
2016/06/16
363
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring应用学习——AOP

1. AOP 1. AOP:即面向切面编程,采用横向抽取机制,取代了传统的继承体系的重复代码问题,如下图所示,性能监控、日志记录等代码围绕业务逻辑代码,而这部分代码是一个高度重复的代码,也就...

江左煤郎
今天
3
0
eclipse的版本

Eclipse各版本代号一览表 Eclipse的设计思想是:一切皆插件。Eclipse核心很小,其它所有功能都以插件的形式附加于Eclipse核心之上。 Eclipse基本内核包括:图形API(SWT/Jface),Java开发环...

mdoo
今天
1
0
SpringBoot源码:启动过程分析(一)

本文主要分析 SpringBoot 的启动过程。 SpringBoot的版本为:2.1.0 release,最新版本。 一.时序图 还是老套路,先把分析过程的时序图摆出来:时序图-SpringBoot2.10启动分析 二.源码分析 首...

Jacktanger
今天
3
0
小白带你认识netty(二)之netty服务端启动(上)

上一章 中的标准netty启动代码中,ServerBootstrap到底是如何启动的呢?这一章我们来瞅下。 server.group(bossGroup, workGroup);server.channel(NioServerSocketChannel.class).optio...

天空小小
今天
3
0
聊聊storm trident batch的分流与聚合

序 本文主要研究一下storm trident batch的分流与聚合 实例 TridentTopology topology = new TridentTopology(); topology.newStream("spout1", spout) .p......

go4it
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部