swift | oc |
*swift有命名空间概念,所谓命名空间即同一个命名空间中相互可以调用不用导入。不同命名空间中可以起相同的名字 swift项目就是一个命名空间 |
|
*运行时获取类属性列表、属性名称、将C语言字符串转成oc string *基本数据类型,在OC中没有可选,swift中如果定义成可选,运行时同样获取不到,使用KVC会崩溃,所以基本数据类型需要赋初值 *private 的属性,使用运行时,同样获取不到属性,同样会让KVC崩溃 |
*运行时即运行时执行的方法 *oc中的对象在运行时面前一切属性方法都是裸露的 ,都通过运行时方法可以获取到 |
*反射机制就是运行时反射执行一些代码 *利用反射机制加载启动控制器,如下 |
*判断是否是某个类 、协议、方法 |
*修改项目名 |
|
*配置桥接文件(一些oc文件需要配置) 1.创建header文件,导入oc头文件 2.完成如下配置,即可在swift中使用 |
|
*extension类似于OC中的分类,在Swift中还可以用来切分代码块 *可以把功能相近的函数,放在一个extension中 注意:和oc的分类一样,extension中不能定义属性 *extension中不能重写父类方法,重写父类方法是子类的职责, 扩展是对类的扩展 |
|
*swift3.0 现在的访问权限则依次为:open,public,internal,fileprivate,private。详情查看以下网址: |
|
*缩进方式设置控件frame |
* OC中使用CGRectInset进行缩进设置 |
*swift3.0设置横竖屏 详情参考 http://stackoverflow.com/questions/25651969/setting-device-orientation-in-swift-ios |
*OC中使用
|
*view插入视图 如下:将tableview放在自定义导航栏下,使用插入更方便 |
|
*为了迎合swift推出了泛型的概念 泛型是程序设计语言的一种特性,他主要是为了限制类型的,比如OC中的数组,你可以限制他里面装的是NSString类型 |
|
*创建时如果隐藏导航栏系统则会自动缩进20个像素 |
|
*tableView内容缩进方法, 如下设置可使tableview内容向下移动height高度 |