首页
学习
活动
专区
工具
TVP
发布

我只不过是出来写写iOS

专栏作者
45
文章
68238
阅读量
20
订阅数
iOS开发资料(纯个人整理)
链接: https://pan.baidu.com/s/1WtL1alp485rGN5LCWaiw_A 提取码: hzei
我只不过是出来写写代码
2021-03-08
5320
iOS 多section瀑布流实现(swift)
 最近因项目需求,写了一个支持多 section 的瀑布流实现组件,完全基于 swift 5 来实现。 先来直接看效果图:
我只不过是出来写写代码
2020-05-18
1.8K0
Xcode10.2 继承UITableView协议失效
 前言:在这次App版本迭代进入集成测试阶段尾声,正式环境打包release环境后,测试回归发现许多包含 tableView 的页面都无法响应点击事件。但是在 debug 环境下从开发功能到滚动测试流程,一直都是没问题的。开始时,真的是百思不得其解
我只不过是出来写写代码
2019-07-19
1.8K1
runtime的那些事(四)—— selector、IMP、Method
 selector 是指方法选择器,在面向对象里可以理解为函数的指针。@selector() 作用就是在指定类中寻找指定名称的方法。 &emsp关于 selector 的用法,其返回类型为 SEL。关于 SEL 的定义,最权威的还是在官方文档中的解释。SEL官方文档链接  关于官方文档对于 SEL 的声明,翻译过来大意如下:selector 方法选择器用于在运行时表示方法的名称,一个 selector 选择器其实就是已经向运行时注册或者映射过的C字符串,通过编译器生成的 selector 选择器在类加载时由运行时自动映射。允许在运行时添加新的 selector 选择器,并可以使用函数 sel_registerName 检索已有的 selector 选择器。但是在使用 selector 选择器时,必须使用函数 sel_registerName 或者 Objective-C 编译器的指令 @selector() 返回的值,而不能直接将 C字符串强制转换成 SEL。 关于 SEL 在 runtime 中的定义,在 runtime 源码中仅仅是找到了结构体的声明。
我只不过是出来写写代码
2019-07-19
2K0
WKWebView崩溃记录——SIGSEGV(11)
在QA测试疯狂把玩App时,突然出现了crash问题,而且还是一个概率非常小的偶发crash。吓得我立马跑到bugly上查看crash记录。在通过符号表转换后,我得到了以下crash时的堆栈信息。
我只不过是出来写写代码
2019-06-20
2.9K1
iOS单例中 Block 回调一对多设计
 播放器是通过代理委托来告知外部当前展示的 VC 类关于音乐播放信息,但需求迭代过程中新增了一个App全局页面展示的音乐悬浮窗,悬浮窗需要实时监听当前播放器的播放状态并更新 view ,而且保持原有 VC 类遵循播放器的代理并更新 view。原本通过代理委托一对一实现的场景被打破,现在要满足一对多的场景。产品最终要实现下面的效果:
我只不过是出来写写代码
2019-06-15
2.8K2
runtime的那些事(三)——NSObject初始化 load 与 initialize
 作为iOS开发,多少都与 load 方法打过交道——在程序 main 函数调用前,类被注册加载到内存时,load 方法会被调用。也就是说每个类的 load 方法都会被调用一次。  在该方法中,我们最常用到的场景,就是使用 runtime 提供的交换函数 OBJC_EXPORT void method_exchangeImplementations(Method _Nonnull m1, Method _Nonnull m2),去改变系统方法行为并添加自定义的行为。 但若要了解 load 方法内部实现流程,还得从iOS程序启动流程开始说起。
我只不过是出来写写代码
2019-05-31
1.4K0
runtime的那些事(二)——NSObject数据结构
 在使用 Objective-C 语言中创建的所有类基类,绝大部分都是继承自 NSObject(NSProxy除外,上文已经有过说明,runtime的那些事(一)——runtime基础介绍。因此想要深入学习 iOS 底层知识,NSObject 类拿来开刀再合适不过了(一脸正经:哈哈哈(ಡωಡ)hiahiahia) 首先,进入查看 NSObject 类结构
我只不过是出来写写代码
2019-05-15
8530
runtime的那些事(一)——runtime基础介绍
一、 什么是runtime? 二、 runtime 版本 三、 与 runtime 的三种交互方式 四、 消息机制的基本原理与执行流程 五、 动态解析与消息转发
我只不过是出来写写代码
2019-04-22
1.2K0
使用cocoaPods集成,imort导入无头文件提示问题解决
    今天在项目中用cocoaPods导入FMDB之后,在创建FMDatabaseQueue时,发现没有代码提示。手写进去虽然不报错可以正常run,但确实是个问题,影响开发效率。
我只不过是出来写写代码
2019-04-02
2.1K0
CocoaPods安装过程小记
今年过年时刚买了台MBP,准备在新本上进行开发,顺便记录下安装CocoaPods过程。
我只不过是出来写写代码
2019-04-02
1K0
GitHub基本使用介绍
之前公司项目一直在使用SVN作为项目代码版本控制,最近我想整理下项目中iOS端CC视频SDK封装,CC移动端SDK本身只提供视频播放信息以及播放器初始化,因此需要自定义播放器的控制逻辑。当整理好了代码准备分享时,发现还是Git才是版本控制的王道。
我只不过是出来写写代码
2019-04-02
1K0
RAC(ReactiveCocoa)介绍(二)——map映射
Map(映射) RAC中包含两种映射方法map、flattenMap,映射方法是将原信号中的内容映射成新的指定内容。 通过对比,从map的实现方法中可以看出是基于flattenMap方法的一层封装,但同时又有不同之处。
我只不过是出来写写代码
2019-04-02
1.3K0
RAC(ReactiveCocoa)介绍(三)——信号过滤
上一篇文章简要说明了映射的使用方法,这次介绍一下信号过滤。 信号过滤,在RAC中会对RACSignal信号发送的信息进行过滤,只有符合判断要求的信号才能被订阅到。 信号过滤有以下几种方法:filter、ignore、ignoreValue、distinctUntilChanged
我只不过是出来写写代码
2019-04-02
7430
RAC(ReactiveCocoa)介绍(一)——基本介绍
    最近接触学习到了RAC(ReactiveCocoa),RAC是函数式+响应式编程结合,首先得去理解何为响应式函数编程(FRP)。
我只不过是出来写写代码
2019-04-02
2.1K0
Header Search Paths 与 User Header Search Paths 的区别
    在解决cocoaPods导入第三方类import不提示头文件名称的过程中,发现build settings中有Header Search Paths和User Header Search Paths。
我只不过是出来写写代码
2019-04-02
1.8K0
imageNamed与dataWithContentOfFile加载图片的区别
1、使用imageNamed函数: [UIImage imageNamed:@"ImageName"];
我只不过是出来写写代码
2019-04-02
4720
iOS开发——解析XML数据
移动端开发中,与后台服务数据请求打交道,现在通常是以JSON格式数据进行处理交互。最近碰到一个项目,后台数据交互返回XML格式数据,很久没有接触此类数据了,稍微记录下。 解析XML数据时,使用的是XMLReader第三方框架。该框架中的解析数据方法非常简单。
我只不过是出来写写代码
2019-04-02
1.3K0
property属性相关小记
针对目前开发中已大多使用ARC自动引用计数技术,因此常用关键字有strong、weak、assign、copy、retain、nonatomic、atomic
我只不过是出来写写代码
2019-04-02
1.1K0
RAC(ReactiveCocoa)介绍(十)——RACMulticastConnection
在实际项目开发过程中,经常会在多处不同地方对同一信号进行订阅。比如:在网络请求时,收到返回数据要针对页面多处进行更新操作。 通常会出现以下RAC写法:
我只不过是出来写写代码
2019-04-02
9910
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档