首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS
订阅
老葛
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
如何从资源和代码层面实现App全方位瘦身?-包大小优化
引言 其实关于此类的博客网上有很多,可能有很多是原创,可能有很多是转载,当然也有很多是抄袭,前些天看到头条也有一篇,写的很好,但是觉得对于初学者,实质性意义觉得不大【因为毕竟要代码保密,资源保密】。
细数iOS触摸事件流动
其中pointInside:withEvent方法用于判定触摸点是否在自身坐标范围内,默认实现是若在坐标范围内则返回YES,否则返回NO。因此,可通过重写UIView的hitTest:withEvent和pointInside:withEvent方法来修改事件的流向。 若视图是…
iOS 响应者链与事件处理全过程分析(1)
IOKit.framework 是与硬件或内核服务通信的低级框架。尽管这是一个公共框架,但苹果不鼓励开发人员使用它,并且任何使用它的应用都将被App Store拒绝。IOKit.framework SpringBoard.app 是 iPhone 的应用程序启动器。它提供所有应…
iOS底层原理总结 - RunLoop
一. RunLoop简介 运行循环,在程序运行过程中循环做一些事情,如果没有Runloop程序执行完毕就会立即退出,如果有Runloop程序会一直运行,并且时时刻刻在等待用户的输入操作。RunLoop可以在需要的时候自己跑起来运行,在没有操作的时候就停下来休息。充分节省CPU资…
iOS探索 内存管理篇
一个优秀的app必然是对内存"精打细算"的,本文就来探索一下内存管理中的一些门道。如果你看到了这篇文章,请仔细看下去,尤其是NSTimer部分的内容介绍了NSTimer和Block中的循环引用存在的差异 1. 五大区 2. 内存布局面试题 1. taggedPointer 最后…
Xcode Debug调试汇总
遇到EXC_BAD_ACCESS这个错误,那就意味着你向一个已经释放的对象发送消息。Xcode知道这个对象是什么,所以可以让我们知道这个对象在哪里,以及这是什么时候发生的。当开启僵尸模式后,遇到EXC_BAD_ACCESS,xcode可以帮我们快速定位到出现问题的代码。 Rev…
一天精通iOS Swift多线程(GCD)
Grand Central Dispatch简称GCD,苹果官方推荐给开发者使用的首选多线程解决方案。多线程开发涉及的细节非常多,下面我会用例子细致的讲解GCD,请一定要精读,一定要用Xcode或Playground多次运行代码去对比结果。实践出真知,练习完这篇文章,你一定会觉…
iOS 编译全过程
这几天看了下编译过程,记录方便查阅及备份。主要内容来源于网路,包含以下知识点: 理论上一个语言对应一个编译器,这样就引入了中间优化器,可以接受多种语言,然后输出对应的机器语言,这样前端只负责输入,后端负责输出即可,新增一种语言,就在中间优化层增加逻辑即可。 接着执行./main…
Swift 5.1 (20) - 协议
协议定义了适合特定任务或功能的方法,属性。协议可以由类,结构或枚举实现,任何类型实现协议的要求方法称为遵守协议。 个人理解:Swift中的协议所能实现的功能,不再局限于OC的代理委托。协议中定义的方法、属性,在遵守协议的类型的实例中可以直接调用和使用。协议这种新的能力,使得协议…
如何在模块化/组件化项目中实现 ObjC-Swift 混编?
... 这里我们重点关注的是如何实现 Swift 代码和 ObjC 代码的相互调用。 1. 在一个 App Target 内部混编 如果是在一个 App Target 内部混编的话,当我们在 ObjC 项目中新建 Swift 文件时或者在 Swift 项目中新建 ObjC 文件…