05 2017 档案

摘要:在 BuildSetting 中 搜索 User Header Search Paths 然后在下面 User Header Search Paths 中添加 ${SRCROOT} 再将后面参数改为recursive 阅读全文
posted @ 2017-05-13 15:18 ZhangShengjie 阅读(988) 评论(0) 推荐(0) 编辑
摘要:#define 参数名(参数) 后面是你想写在宏里的代码 要变的值使用前面的 参数 例如 : 我定义一个字体 传入字体的大小 #define Font(size) [UIFont systemFontOfSize:size] 阅读全文
posted @ 2017-05-13 10:31 ZhangShengjie 阅读(2213) 评论(0) 推荐(0) 编辑
摘要:通知在ios10 中推荐使用 导入 import UserNotifications 头文件 阅读全文
posted @ 2017-05-11 21:41 ZhangShengjie 阅读(213) 评论(0) 推荐(0) 编辑
摘要:延迟2s执行 DispatchQueue.main.asyncAfter(deadline: DispatchTime.now()+2) 阅读全文
posted @ 2017-05-10 15:00 ZhangShengjie 阅读(611) 评论(0) 推荐(0) 编辑
摘要:今天在封装网络工具类的时候 报错了 经过分析发现是在Swift3.0 把闭包的入参的参数名去掉就好了 阅读全文
posted @ 2017-05-09 00:26 ZhangShengjie 阅读(2514) 评论(0) 推荐(0) 编辑
摘要:原理介绍 CocoaPods 地址 https://github.com/CocoaPods/CocoaPods CocoaPods 索引地址 https://github.com/CocoaPods/Specs 安装好了CocoaPods 之后 下载 CocoaPods的索引到本地 索引中有pod 阅读全文
posted @ 2017-05-08 16:14 ZhangShengjie 阅读(848) 评论(0) 推荐(0) 编辑
摘要:当一个使用一个方法发现后面 throws 说明可能会抛出异常 需要try 进行处理 1 try? 如果解析成功就有值 否则返回nil (推荐) 2 try! 如果解析成功就有值 否则直接崩溃 (不推荐) 3 try 如果 如果解析成功就有值 如果出错 能够处理异常 输出错误 do try catch 阅读全文
posted @ 2017-05-07 18:43 ZhangShengjie 阅读(496) 评论(0) 推荐(0) 编辑
摘要:(arr as NSArray).write(toFile: "Users/你的用户名/Desktop/mian.plist", atomically: true) 阅读全文
posted @ 2017-05-05 17:27 ZhangShengjie 阅读(462) 评论(0) 推荐(0) 编辑
摘要:注意 使用前必须先取消所有的你想设置View 的 Autoresizing 属性 因为 Autoresizing Layout不能共存 系统默认是 Autoresizing 自动布局核心公式 自动布局构造函数 如果指定宽 高 约束 参照视图设置为 nil 参照属性选择 .NotAnAttribute 阅读全文
posted @ 2017-05-04 18:14 ZhangShengjie 阅读(677) 评论(0) 推荐(0) 编辑
摘要:automaticallyAdjustsScrollViewInsets 自动缩进 20 像素 默认是 True 项目中如果有UIViewController 和ScrollView 一般都要设置成false 阅读全文
posted @ 2017-05-04 15:01 ZhangShengjie 阅读(208) 评论(0) 推荐(0) 编辑
摘要:那是因为你没有实现 数据源和代理方法 实现下就好了 阅读全文
posted @ 2017-05-04 12:44 ZhangShengjie 阅读(2309) 评论(1) 推荐(0) 编辑
摘要:1 打开终端 cd 进去当前项目 2 总行数查看命令 find . -name "*.m" -or -name "*.h" | xargs wc -l "*.m"是你想查看的文件名 同理".swift"代表swift文件 3 总行数除去空行查看命令 find . -name "*.m" -or -n 阅读全文
posted @ 2017-05-03 21:58 ZhangShengjie 阅读(601) 评论(0) 推荐(0) 编辑
摘要:在swift 中 如果一个按钮添加点击方法 如果定义为Private 或者 定义为 FilePrivate 那么会在Addtaget方法中找不到私有方法 但是又不想把方法暴露出来,避免外界访问 ,那么可以在私有方法前加 @objc 修饰 那么它就能找到那个方法了 @objc 作用 1 filepri 阅读全文
posted @ 2017-05-03 11:08 ZhangShengjie 阅读(6511) 评论(0) 推荐(0) 编辑
摘要:那是因为你在使用自己写的分类时没有指定返回的数据类型 指定下返回数据类型就好了 我是用的oc写的分类在Swift中使用的 阅读全文
posted @ 2017-05-02 16:35 ZhangShengjie 阅读(824) 评论(0) 推荐(0) 编辑
摘要:insetBy(dx: CGFloat, dy: CGFloat) -> CGRect 点击头文件进去 可以发现它是返回的一个CGRect insetBy方法是CGRect 的一个方法 dx后面的参数代表X轴的偏移 正数是向X轴正方向移动(即像右移动) 负数是向X轴负方向移动(即像左移动) dy后面 阅读全文
posted @ 2017-05-02 16:20 ZhangShengjie 阅读(4355) 评论(0) 推荐(0) 编辑
摘要:normal 等价于 UIControlState(rawValue: 0) 阅读全文
posted @ 2017-05-02 15:05 ZhangShengjie 阅读(178) 评论(0) 推荐(0) 编辑
摘要:由于Swift 中新增了一个命名空间(在同一个命名空间中的文件可以直接访问而不用引入头文件)的概念 所以通过字符串创建控制器需要带上命名空间 1 首先为Bundle 写一个分类 获取命名空间 2 然后通过字符串直接创建控制器 阅读全文
posted @ 2017-05-02 11:31 ZhangShengjie 阅读(644) 评论(0) 推荐(0) 编辑
摘要:以前项目中只要用了private 那么在同一个文件同一个类中还是能访问的(比如一个类中写了一个extension) swift3.0现在不行了 新增了一个fileprivate 的访问控制 以前的private 变成了真正的私有 只有同一个类中才能访问 一个文件中即使extension也不能访问了 阅读全文
posted @ 2017-05-02 11:17 ZhangShengjie 阅读(519) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示