首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
质数心情
掘友等级
iOS Developer
JS萌新,前端入门
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
140
文章 134
沸点 6
赞
140
返回
|
搜索文章
最新
热门
iOS内存管理引用计数
每个runloop在运行的时候都会创建一个autoreleasepool,在runloop休眠的时候释放对象到岗哨对象(nil). 在给对象的引用计数+1的时候, rootRetainCount会读取对象的isa指针中的bits. 如果bits中是nonpointer,说明is…
iOS 内存管理AutoreleasePool
AutoreleasePoolPageData是一个双向链表. push和pop是针对page链表的操作,push是通过一个岗哨对象(nil)新建一个表.在@autoreleasepool作用域开始时push,结束时pop. 在autoreleasepool中添加对象的时候,判…
Swift 重载运算符
print不会打印,因为这两个person在内存中的地址是不同的. swift是支持重载运算符的,==需要继承Equatable. Swift还提供了一个Comparable协议,继承自Equatable. swift中struct是值类型,可以直接作==的比较,但是>还是要继…
Flutter小知识-BuildContext
Flutter中经常可以看到Widget build(BuildContext context) {}, Theme.of(context)这些需要传递BuildContext的场景. BuildContext是一个抽象类. Widget在构建的时候build会调用create…
# OC中的copy和strong修饰符
以前在oc中,如果一个属性比如NSArray,如果使用copy来修饰,则是不可变的. 当给nmArray赋值一个可变的数组对象时,用copy修饰则代表它会进行一次copy操作,则变为不可变对象. 这段代码在以前的oc中是会造成crash的,因为不可变的数组是不能操作的. 但是现…
iOS CGAffineTransform学习
在变换的时候会有一个从远到近的视觉效果,叫做灭点,对应Transform3D的属性m34. layer的transform变化,frame当然变化了.
Flutter和原生iOS调用相册
iOS14的PHPicker获取到的图片地址是临时路径,所以使用UIImagePickerViewController获取到的在tmp路径下的地址会更方便一些.
模块化学习实践总结
module map文件就是对一个框架,一个库的所有文件的结构化描述。默认文件名是 module.modulemap 关于 LLVM module 系统更加详细的内容,可以参考 Clang 官方文档 苹果为 Swift 设计了 Swift Module。Swift Module…
isa-Swizzling学习记录
iOS中以前只知道isa-Swizzling是KVO的实现原理,但是没有在业务中实际实践过,这次有个弹窗的需求,正好可以拿来试试. 如上图,在弹窗展开show的时候,用户是可以点击其他的按钮如搜索,会员分层等这些不在弹出的view上的按钮. 因为是把弹窗加到的keywindow…
简单实现TableView空数据展示
tableview的空数据状态的展示是开发中最常见的UI展示.简单实现tableview的空列表状态,我主要想到了两种方法. 一种是在数据代理方法func tableView(_ tableView: UITableView, numberOfRowsInSection sec…
下一页
个人成就
文章被点赞
48
文章被阅读
30,253
掘力值
739
关注了
55
关注者
22
收藏集
5
关注标签
12
加入于
2017-04-25