文档章节

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
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
iOS Swift4项目EFarm学习和总结

Swift项目 先上一个码云地址码云地址 项目的简单介绍 项目编写过程和一些知识点 这个项目从Xcode的singleView模板创建而来, 经过文件整理归类和修改创建了一个标准易于维护的最终模板, 你可以...

iShown
2017/09/22
0
0
Swift 2.0 发布:即将开源,支持 Linux

在6月9日凌晨举行的WWDC 2015全球开发者大会上,苹果发布了Swift 2.0,并宣布将于今年年底开源Swift语言。Swift2.0引入了很多的新特性以确保开发者可以更快、更简单的构建应用,这些新特性包...

oschina
2015/06/09
22.3K
100

没有更多内容

加载失败,请刷新页面

加载更多

如何通过 J2Cache 实现分布式 session 存储

做 Java Web 开发的人多数都会需要使用到 session (会话),我们使用 session 来保存一些需要在两个不同的请求之间共享数据。一般 Java 的 Web 容器像 Tomcat、Resin、Jetty 等等,它们会在...

红薯
今天
3
0
C++ std::thread

C++11提供了std::thread类来表示一个多线程对象。 1,首先介绍一下std::this_thread命名空间: (1)std::this_thread::get_id():返回当前线程id (2)std::this_thread::yield():用户接口...

yepanl
今天
3
0
Nignx缓存文件与动态文件自动均衡的配置

下面这段nginx的配置脚本的作用是,自动判断是否存在缓存文件,如果有优先输出缓存文件,不经过php,如果没有,则回到php去处理,同时生成缓存文件。 PHP框架是ThinkPHP,最后一个rewrite有关...

swingcoder
今天
2
0
20180920 usermod命令与用户密码管理

命令 usermod usermod 命令的选项和 useradd 差不多。 一个用户可以属于多个组,但是gid只有一个;除了gid,其他的组(groups)叫做扩展组。 usermod -u 1010 username # 更改用户idusermod ...

野雪球
今天
3
0
Java网络编程基础

1. 简单了解网络通信协议TCP/IP网络模型相关名词 应用层(HTTP,FTP,DNS等) 传输层(TCP,UDP) 网络层(IP,ICMP等) 链路层(驱动程序,接口等) 链路层:用于定义物理传输通道,通常是对...

江左煤郎
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部