随笔分类 -  OC

摘要:前面我们已经讲解Runtime的基本概念和基本使用,如果大家对Runtime机制不是很了解,可以先看一下以前的博客,会对理解这篇博客有所帮助!!! Runtime基本概念:https://www.cnblogs.com/guohai-stronger/p/9154889.html Runtime基本 阅读全文
posted @ 2018-08-02 17:35 国孩 阅读(1141) 评论(0) 推荐(1) 编辑
摘要:在iOS开发中,有一个文件main.m,可能并不是很引起开发的注意。不过,可能在面试过程中,面试官还是有些会问到主函数里面到底做了哪些工作和任务。下面我们主要看一下main.m内部的逻辑。 #import <UIKit/UIKit.h> #import "AppDelegate.h" // 1.创建 阅读全文
posted @ 2018-07-30 16:32 国孩 阅读(458) 评论(0) 推荐(0) 编辑
摘要:在开发中,我们经常看到有按钮等的点击,会出现响应事件。按钮->view->ViewController->UIWindow->UIApplication,这就形成了一个响应链。本篇将讲述响应链的具体底层实现,大约花费10-15分钟左右,欢迎点评!!! 一、知识 继承UIResponder的对象,我们 阅读全文
posted @ 2018-07-28 17:35 国孩 阅读(811) 评论(0) 推荐(0) 编辑
摘要:这两天我将整理TCP&UDP&Socket,大约花大家10-15分钟之间,希望本篇文章让大家对TCP使用的理解提高一个层次。 建议大家拿出纸和笔,画一下!!! 一、TCP 1. TCP位于传输层,英语全称为Transmission Control Protocol ,又名传输控制协议;UDP英语全称 阅读全文
posted @ 2018-07-08 11:09 国孩 阅读(1975) 评论(5) 推荐(0) 编辑
摘要:本篇博客转自https://www.jianshu.com/p/4b1d77054b35 1. NSOperation、NSOperationQueue 简介 NSOperation、NSOperationQueue 是苹果提供给我们的一套多线程解决方案。实际上 NSOperation、NSOper 阅读全文
posted @ 2018-07-05 15:25 国孩 阅读(409) 评论(0) 推荐(0) 编辑
摘要:前面已经讲解了SQLite,FMDB以及CoreData的基本操作和代码讲解(CoreData也在不断学习中,上篇博客也会不断更新中)。本篇我们将讲述在实际开发中,所使用的iOS数据持久化的方式以及怎么会使用到这些方式,都会以本人实际开发的场景为例,大约需要花10-15分钟,欢迎大家指正。 一、前言 阅读全文
posted @ 2018-07-03 18:08 国孩 阅读(674) 评论(0) 推荐(1) 编辑
摘要:本人已迁移博客至掘进,以后会在掘进平台更新最新的文章也会有更多的干货,欢迎大家关注!!!https://juejin.im/user/588993965333309 上面已经说完了SQLite和FMDB以及两者的区别,本篇将讲述iOS中另一个存储方式,CoreData的使用。通读下来大约10分钟,后 阅读全文
posted @ 2018-07-03 09:49 国孩 阅读(7461) 评论(0) 推荐(0) 编辑
摘要:前几篇已经写完了SQLite与FMDB的基本内容以及衍生出来的知识点,我们这一篇主要讲述FMDB与SQLite在基本使用中的区别,大约需要5-10分钟时间讲述内容,欢迎大家指正。 基本使用区别 1.数据库的操作对象 (1)SQLite通过sqlite3 (2)FMDB方式 2.打开数据库方式 (1) 阅读全文
posted @ 2018-07-01 20:09 国孩 阅读(1032) 评论(0) 推荐(0) 编辑
摘要:上一篇博客讲述SQLite的使用,本篇将讲述FMDB源码,后面也会讲解SQLite在使用与FMDB的区别。本篇读下来大约20-30分钟,建议大家先收藏一下。 FMDB是以OC方式封装SQLite中C语言的API,也是iOS中SQLite数据库的框架,在目前研发项目中使用的也是比较广泛的。下面直入正题 阅读全文
posted @ 2018-06-30 17:29 国孩 阅读(1761) 评论(0) 推荐(0) 编辑
摘要:本篇承接上篇SQLite详解的下篇,介绍SQLIte为什么占用资源少的原因?本文主要参考https://blog.csdn.net/hanyingzhong/article/details/46400803。 SQLite的一个显著的特点就是占用内存量很小,这作为一个嵌入式的DBMS是非常重要的,那 阅读全文
posted @ 2018-06-25 15:46 国孩 阅读(1907) 评论(0) 推荐(1) 编辑
摘要:本人已迁移博客至掘进,以后会在掘进平台更新最新的文章也会有更多的干货,欢迎大家关注!!!https://juejin.im/user/588993965333309 这周比较忙,前几天都加班到11点左右,基本都是到家都是12点左右(稍稍的抱怨一下,免费加班,何为免费,就是任何补偿都没有,例如调休,加 阅读全文
posted @ 2018-06-24 11:18 国孩 阅读(5041) 评论(0) 推荐(1) 编辑
摘要:本人已迁移博客至掘进,以后会在掘进平台更新最新的文章也会有更多的干货,欢迎大家关注!!!https://juejin.im/user/588993965333309 本篇是答应在端午写iOS网络-四篇源码解析以及封装的最后一篇,是针对上一篇YTKNetwork源码解析后的一次封装,也是自己实际项目中 阅读全文
posted @ 2018-06-19 18:10 国孩 阅读(6524) 评论(7) 推荐(1) 编辑
摘要:本人已迁移博客至掘进,以后会在掘进平台更新最新的文章也会有更多的干货,欢迎大家关注!!!https://juejin.im/user/588993965333309 本篇是第三篇关于网络请求的,将讲述YTKNetwork源码,上述两篇分别讲述AFNetworking源码解析以及结合自己项目封装AFN 阅读全文
posted @ 2018-06-18 21:35 国孩 阅读(4398) 评论(0) 推荐(1) 编辑
摘要:本人已迁移博客至掘进,以后会在掘进平台更新最新的文章也会有更多的干货,欢迎大家关注!!!https://juejin.im/user/588993965333309 本篇博客是接着上一篇AFNetworking源码解析的后续,如果想对AFNetworking源码有所了解。 请读一下https://w 阅读全文
posted @ 2018-06-17 23:32 国孩 阅读(3545) 评论(0) 推荐(0) 编辑
摘要:本人已迁移博客至掘进,以后会在掘进平台更新最新的文章也会有更多的干货,欢迎大家关注!!!https://juejin.im/user/588993965333309 趁着端午节日,自己没有什么过多的安排,准备花4-5天左右,针对网络请求源码AFNetworking和YTKNetwork进行解析以及这 阅读全文
posted @ 2018-06-17 17:29 国孩 阅读(3900) 评论(0) 推荐(0) 编辑
摘要:RunLoop是iOS和OSX开发中非常基础的一个概念,这篇文章将从源码以及应用入手,介绍RunLoop的概念以及底层实现原理。本人看了一下RunLoop的英语源码,以及借鉴部分优秀博客,感谢!读完这篇文章大约15-25分钟,建议先保存一下。 1.RunLoop概念 根据苹果在文档里的说明(苹果关于 阅读全文
posted @ 2018-06-16 18:23 国孩 阅读(972) 评论(1) 推荐(0) 编辑
摘要:项目有个需求:裁剪图片,针对头像,下面是要求: 大家可以看到这张图片的圆角已经去除,下面说说我在项目利用了两种方式实现此裁剪以及查看技术文档发现更高效裁剪方式,下面一一讲解:看下来大约需要15-20分钟。 在公共类中Util类中创建类方法 1.CGContext裁剪 实现该方法: 在该需要的地方调用 阅读全文
posted @ 2018-06-16 00:17 国孩 阅读(1625) 评论(0) 推荐(0) 编辑
摘要:Runtime应用 1.Runtime 交换方法 应用场景:当第三方框架或者系统原生方法功能不能满足我们的时候,我们可以在保持系统原有功能的基础上,添加额外的功能。 需求:加载一张图片直接用系统的[UIImage imageNamed:@""];是无法知道到底有没有加载成功。给系统的imageNam 阅读全文
posted @ 2018-06-15 11:34 国孩 阅读(557) 评论(0) 推荐(0) 编辑
摘要:这篇关于Runtime讲解参考https://juejin.im/post/593f77085c497d006ba389f0以及https://www.jianshu.com/p/6ebda3cd8052 针对iOS开发人员,相信每个人都对Runtime有所了解。面试官更是对Runtime非常钟爱, 阅读全文
posted @ 2018-06-14 16:11 国孩 阅读(507) 评论(0) 推荐(0) 编辑
摘要:自己通过懒加载加载需要的View,我们自己的项目需要填写运费单号:效果如下: 只需要将上述代码拷贝到你自定义的textfield的当前View上,就可以解决问题,(要记得加入UITextfieldDelegate)加入代理,这样才可以。 拓展:本次校验是通过ASCII表来校验。 阅读全文
posted @ 2018-05-29 10:05 国孩 阅读(839) 评论(0) 推荐(0) 编辑