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

iOS小生活

专栏作者
162
文章
359296
阅读量
39
订阅数
iOS开发中的单例设计模式
五年前,我曾经在《iOS开发中的设计模式-单例模式》中介绍过Objective-C中的单例设计,可以看到,OC中的单例实现还是比较复杂的,需要考虑的场景也很多。
拉维
2022-06-15
5010
《Charles从入门到精通》之截取截取Https通讯信息和模拟慢速网络
如果你需要截取分析HTTPS协议相关的内容,那么需要安装Charles的CA证书。具体步骤如下。
拉维
2022-06-15
4860
Flutter混合工程的自动化
在《Flutter与原生工程的混合开发》中,我介绍了Flutter工程与Native工程的混合开发,今天我们来聊一聊混合工程的自动化。
拉维
2022-03-28
1K0
Flutter的热重载原理
Flutter的热重载功能,想必诸位都已经使用过好多次了。它的使用流程很简单,终端输入r或者R即可;但是其内部实现是非常复杂的,今天这篇文章,我们就是通过下断点这种动态调试的方式来一步一步在这些复杂的实现代码中去找到核心的流程。
拉维
2022-03-28
1.7K1
Flutter中的插件开发(Package&Plugin)
实际上,Plugin就是一个特殊的Package。Package是一个纯Dart包,它里面封装了一个纯Dart的功能组件,可以将其理解成是一个Widget;而Plugin是提供的对Android或者iOS功能的封装,它是在Flutter层面提供前述组件功能,使Flutter可以较为方便地调取Native的相关功能模块。
拉维
2022-03-28
9320
Channel的原理探究
在上一篇文章《Flutter引擎——下载、编译和调试》中,我们已经可以调试引擎代码了;而在《Flutter与原生工程的混合开发》中,我们使用到了FlutterMethodChannel。本文就通过Flutter引擎代码的调试来研究一下channel的原理。
拉维
2022-03-28
9340
Flutter引擎——下载、编译和调试
我们打开一个Flutter工程,找到iOS文件夹,点开Runner.xcworkspace工程,找到products文件夹下面的Runner.app:
拉维
2022-03-28
1.9K0
Flutter中的Key详解(补充)
本文是对Flutter中的Key详解的补充,建议读本文前先读完Flutter中的Key详解。
拉维
2022-03-28
5750
Widget的生命周期和渲染原理
关于生命周期,我之前写过一篇文章总结过:提到生命周期,我们是在说什么?今天这个篇幅是以此文章为基准,再做一些补充。
拉维
2022-03-28
1.2K0
使用InheritedWidget来进行状态管理
之前我写过一篇文章使用Provider来进行状态管理,介绍了在Flutter中如何通过Provider来进行状态管理,今天我们来介绍状态管理的另外一种方式——InheritedWidget。实际上,Provider的底层也是通过InheritedWidget来实现的。
拉维
2022-03-28
3880
Dart中的异步和多线程(补充)
这个例子中,_testMethod里面有5个异步任务,每一个异步任务后面都跟有一个then。乍一看,我的结论是每个异步任务执行完毕之后就会紧接着执行该异步任务后面的then里面的任务,而每一个异步任务都是添加任务到子Isolate中(看着好像是这样,但其实并不是,后面会有说明),因此,then里面的打印任务应该是有顺序的。
拉维
2022-03-28
8220
Flutter中.yaml文件内容详解
YAML(读音/ˈjæməl/),是“Yet Another Markup Language”的英文缩写,翻译过来是:仍是一种标记语言。
拉维
2022-03-28
2.2K0
Flutter中的Key详解
在Flutter中,几乎每一个Widget都有一个key。虽然我们在日常的开发中极少会使用到这个key,但是实际上key的存在是很有必要的。那么key到底是什么?它有什么作用?在哪些场景下会必要要使用key呢?
拉维
2022-01-14
2.1K0
Flutter与原生工程的混合开发
上述这两大类都是可以实现的,技术层面没有任何问题。但是我并不建议在Flutter页面和原生页面之间来回穿插切换,原因如下:
拉维
2021-11-19
1.2K0
Block原理详解(一)
今天这篇文章也是在前面这三篇文章的基础上,再结合自己最近的一些工作感悟,进行内容的完善。
拉维
2021-04-16
5480
KVO详解(一)
我在之前的文章iOS开发中的设计模式--观察者模式中有介绍过KVO的简单使用,大家可以先去了解一下。今天呢,我们来详细分析下KVO。
拉维
2021-03-25
6910
KVO详解(二)
上篇文章中我介绍了KVO的简单用法以及KVO的实现细节,为了加深对KVO的理解,我决定从头到尾介绍一下如何自定义KVO。
拉维
2021-03-25
6570
类的加载(二)
通过前面文章的介绍,我们已经对rw和ro之间的关系有过了解了,本篇文章首先通过一个面试题来加深下诸位对ro和rw的理解,也进一步熟悉下Runtime的API。
拉维
2021-03-10
5410
Swift进阶七——面向对象编程
面向对象编程(OOP,Object Oriented Programing)有三大特性:
拉维
2021-02-15
9340
Swift进阶八——泛型
当你扩展一个泛型类型的时候,不需要在扩展的定义中提供类型形式参数列表。原始类型定义的类型形式参数列表在扩展体里面仍然有效,并且原始类型形式参数列表名称也用于扩展类型形式参数。
拉维
2021-02-15
7640
点击加载更多
社区活动
RAG七天入门训练营
鹅厂大牛手把手带你上手实战
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档