首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS
订阅
cattt
更多收藏集
微信扫码分享
微信
新浪微博
QQ
23篇文章 · 0订阅
【老司机精选】SwiftUI 技术内幕
文章大纲 前言 回顾 语法糖 控件使用 状态管理 渲染流程 概念区分 介绍 视图标识 (View Identity) 定义 Identity 声明式 Identity 结构性 Identity 危险的
SDWebImage---源码分析
本文是对优秀三方开源库源码学习的第一篇,通过对优秀源码的分析,帮助我们提升自己的“内功”。 优秀的轮子,比如SDWebImage我们开发中使用了多次,再熟悉不过了。除了对其功能的使用之外,他优秀的设计模式和封装思想也值得我们学习。以及前面几篇文章中分享的多线程,runloop,…
iOS-Swift 独孤九剑:八、协议的本质
在 Swift 中,协议是一个很常见的东西,会经常用到,那它的本质是什么呢?它在底层又是一个什么样的结构呢?本篇文章将对 Swift 协议的本质进行探索......
Covariance, Contravariance以及Generics在 Swift/OC 中的应用.
初次看到这两个单词 Covariance, Contravariance也许很茫然, 先解释一下这两个单词的由来, variance是"型变"的意思, 表示两个源类型的关系是如何影响它们派生出来的复杂类型的关系. con + variance 表示"共同变化", 即"协变"; …
被误会的GCD死锁和崩溃的真正原因
正确答案是输出1、2和(68)顺序不固定、3、que队列循环等待阻塞造成死锁,但并不会崩溃。 如果能准确说出执行顺序并理解为什么死锁而不崩,后面的内容可以不用看了,如果心中还有疑虑,模棱两可,这就是这篇文章的目的,往后看👇👇先理解解决执行顺序问题,再解决死锁问题。 自动的根…
iOS:CAEmitterLayer粒子效果
说到粒子效果就要说到核心动画Core Animation,因为粒子效果所用到的特殊图层是包含在核心动画框架中的。这个特殊图层就是CAEmitterLayer。 CAEmitterLayer是CALayer的一个常用子类,CALayer的子类有很多,CAEmitterLayer就…
iOS-音频-AVAudioSession
1. AVAudioSession 概述 最近一年一直在做IPC Camera的iOS客户端开发。和音频打交道,必须要弄清楚 AVAudioSession。 可以看到AVAudioSession就是用来管理多个APP对音频硬件设备(麦克风,扬声器)的资源使用。 2. AVAud…
聊聊 iOS 中的像素对齐
在 iOS 中画出一像素的线,为什么有时画出来线很虚很糊,有的时候不会? 在 iOS 中画一个非整数宽高视图,系统会启动什么样的机制来应对? 我深究了一下,想同步给你。
lineHeightMultiple 和 baselineoffset 的关系
2、iOS 渲染的文本,绝没有自带边距。之所觉得 iOS 自带了边距,是因为没有考虑字体的因素。 在日常的 iOS 开发中,一般会使用系统提供的控件来显示文本内容。这些控件,无外乎:UILabel、UITextField、UITextView 这三者。当然,也可以自己实现,不过…
在iOS中如何正确的实现行间距与行高
最近准备给 VirtualView-iOS 的文本元素新增一个 lineHeight 属性,以便和 VirtualView-Android 配合时能更精确的保证双平台的一致性。面向 Google 以及 Stack Overflow 编程了一会后发现,能查到的资料大部分是介绍如何…