
oc基础
文章平均质量分 56
Ksilly
让优秀称为一个人的习惯,如果你不变得实力强大,事业会选择放弃你,生活会选择放弃你。我也会选择放弃你,
展开
-
YYKIT系列之 —— YYCache
YYCache是一个优秀的缓存框架,其文件结构如下:YYCache的文件结构分为四个,YYCAche、YYDiskCache、YYKVStorage、YYMemoryCacheYYCAche使用以及介绍:初始化方法:- (nullable instancetype)initWithName:(NSString *)name;- (nullable instancetype)initWithPath...原创 2018-06-29 10:41:30 · 342 阅读 · 0 评论 -
swift - 百度云推送
前提准备:1、工程准备申请开发与生产环境下所对应的推送证书,推送证书的申请这里不再赘述 配置工程文件,在TARGETS下选择Capabilities,打开Background Models并选中最后一项,打开Push Notification选项生成后缀为entitlements的相关文件 在工程配置文件plist文件中去设置我们用于推送环境下所有的Bundle Identifier...原创 2018-08-09 14:40:30 · 542 阅读 · 0 评论 -
Swift4.1新特性1之泛型加强
随着Xcode 9.4.1的跟新,Swift 4.1版本以及iOS 11.4也随之进行跟新和扩展。跟新的内容主要是围绕着泛型加强进行完善和扩展swift中的array是一个泛型的结构体类型,它有一个为element的类型参数。如果我们对array实现Equatable 协议,那么前提条件是其元素element也要支持内容与地址比较。这样我们才能为array创建判断元素是否相等的扩张方法e...原创 2018-07-23 09:05:00 · 568 阅读 · 0 评论 -
IOS - 常用代码块收集
收集常用的代码块是加快开发的有效途径,收集的操作步骤这里不在赘述,仅仅贡献上一些常用的功能性代码1、与高度和宽度有关的 /*获取导航栏高度*/ public func getNavigationBarHeight() -> CGFloat { let navRect:CGRect! = self.navigationController?.naviga...原创 2018-07-26 13:25:16 · 343 阅读 · 0 评论 -
swift - iOS10后的自定义导航条按钮的偏移距离问题
导航控制器是我们常用的控制器,在iOS10之前我们自定义的导航按钮在添加时会有为20个像素的间隙问题,通常的解决方式是创建一个类型为fixed..Space的item加入导航按钮组去解决间隙过大问题,但是但是在iOS10之后此方法就不在实用了!如图:之前的解决方式如下lazy var leftButton:UIButton = { let button:UIBut...原创 2018-07-17 18:06:59 · 1855 阅读 · 1 评论 -
swift - 数据缓存一使用UserDefaults与plist表格进行数据存储
UserDefaults是iOS中提供的一套最为基础的持久化方式,一般用于存储用户的基本信息直接上代码:// 最简单的使用于存取 func userDefaultsSave() -> Void { let user:UserDefaults = UserDefaults.standard /*基础的可存储的类型*/ user.set(URL(s...原创 2018-06-28 18:10:39 · 1509 阅读 · 0 评论 -
swift 开发中遇见的NSURLErrorDomain的-1005错误总结
HTTP的长链接于端链接:在HTTP1.0中,默认的连接都是短链接,当发生一个http请求时会产生一个tcp连接,请求结束时会关闭tcp连接在HTTP1.1开始,所有的默认连接就是进行的长链接,即在一次连接后,服务器于客户端之间建立的TCP连接并不是立即断开的。而是按照约定的Keep-Alive时长维持一定时间的连接状态。iOS中的1005错误问题:我在使用Alamfire框架时出现了1005网络...原创 2018-06-28 10:36:25 · 3285 阅读 · 1 评论 -
swift - Alamofire 网络请求
Alamofire是一个swift语言的网络开源库,主要用于网络请求,响应操作,响应校验,响应缓存其基本用法如下:进行网络请求、响应操作、响应校验、响应缓存http方式、parameter编码、http headers 、验证数据的上传与下载工具类有CURL command outPut、statical metrics高级用法url 绘话管理、绘话代理、绘话请求routing请求操作model ...原创 2018-06-20 15:23:28 · 1579 阅读 · 0 评论 -
swift - MJExtension 使用
MJExtension 简介:(建议使用object-c语言的model,swift的原因之后进行解释)MJExtension是一套字典与模型直接进行相互转化的超轻量级框架,可以使用MJExtension处理以下的模型字典转换1、json -> model 、 core data model2、jsonString -> model、core data model3、model、 co...原创 2018-06-20 15:22:43 · 3047 阅读 · 0 评论 -
swift - UIGestureRecognizer 于几种常用手势
手势基础类:UIGestureRecognizer(手势识别器)手势识别对象常常用于触摸序列或者其他输入的逻辑判断,并对该识别进行操作。其具体的子类有以下七种1、UITapGestureRecognizer 轻点手势识别2、UIPinchGestureRecognizer 捏合手势识别对象3、UIRotationGestureRecognizer 旋转手势识别 4、UISwipeGestureRe...原创 2018-06-26 15:53:10 · 6764 阅读 · 0 评论 -
swift - TableView的使用以及圆角分组表格实现的思路
TableView的使用:与oc语言中的tableview基本类似,swift中的表格依然是如下的实现步骤1、创建表格2、设置代理,并注册单元格3、遵循协议4、实现代理方法swift创建表格:lazy var tableView:UITableView = { let table:UITableView = UITableView.init(frame: .zero, style: ...原创 2018-06-26 09:26:26 · 2413 阅读 · 0 评论 -
Swift - 使用DispatchGroup处理多线程并发操作与简化代码
使用场景1、简化代码易读性,似的获取数据与界面刷新分离2、处理多线程并发执行,处理多任务请求结束后的UI刷新问题3、与网络请求第三方的混合使用一、创建DispatchGroup与简单实用创建队列组lazy var gropQueue:DispatchGroup = { let grop:DispatchGroup = DispatchGroup.init...原创 2018-06-25 16:59:06 · 7259 阅读 · 0 评论 -
swift-指针类型Memory Layout的简介与使用
前沿:swift语言在设计之初是与C语言的API进行了无缝的对接混用,但是在语法上具有很大的差异,swift在默认情况下是内存安全的,这也意味着我们在swift中是禁止使用内存操作的,但是swift并没有对内存的使用进行禁止,因此swift存在了一个特殊的数据类型unsafeMemory Layout类MemoryLayout是一个数据结构,用于保存类的内存配置,其组成如下str...原创 2018-08-27 11:11:58 · 2349 阅读 · 0 评论