- 一、简介 ① 什么是依赖注入? 依赖注入可以通过初始化方法(或构造函数)传递所需要的参数,或者通过属性(setter)传递。 初始化方法注入: - (instancetype)initWi... 一、简介 ① 什么是依赖注入? 依赖注入可以通过初始化方法(或构造函数)传递所需要的参数,或者通过属性(setter)传递。 初始化方法注入: - (instancetype)initWi...
- 一、前言 UIScrollView 是 iOS 开发中不可或缺也是使用最多的基础组件,常用的 Feed 流、Pager、轮播图等等,都与其存在密不可分的联系。日常开发中,我们通常局限于必要的几个调用... 一、前言 UIScrollView 是 iOS 开发中不可或缺也是使用最多的基础组件,常用的 Feed 流、Pager、轮播图等等,都与其存在密不可分的联系。日常开发中,我们通常局限于必要的几个调用...
- iOS有原生的socket,但AsyncSocket这个第三方库,对socket的封装比较好,本文就是基于AsyncSocket的使用介绍。 环境 下载AsyncSocket https://gith... iOS有原生的socket,但AsyncSocket这个第三方库,对socket的封装比较好,本文就是基于AsyncSocket的使用介绍。 环境 下载AsyncSocket https://gith...
- 一、背景 在编写日常业务代码时,或多或少都会引入一些导致内存泄漏的代码,而这种行为又很难被监控,这就导致应用内存泄漏的口子越开越大,直接影响到线上应用的稳定性。虽然 Xcode 的 Instrucmen... 一、背景 在编写日常业务代码时,或多或少都会引入一些导致内存泄漏的代码,而这种行为又很难被监控,这就导致应用内存泄漏的口子越开越大,直接影响到线上应用的稳定性。虽然 Xcode 的 Instrucmen...
- iOS开发中,拨打电话的实现主要有三种方式: 直接拨号:拨打完电话之后回不到原来的应用,会停留在通讯录里面,而且是直接拨打,不弹出提示 - (void)makePhoneCall { NSMu... iOS开发中,拨打电话的实现主要有三种方式: 直接拨号:拨打完电话之后回不到原来的应用,会停留在通讯录里面,而且是直接拨打,不弹出提示 - (void)makePhoneCall { NSMu...
- 一、前言 编程语言可以分为两种,编译语言和直译式语言; 编译语言(Compiled language)是一种编程语言类型,通过编译器来实现。它不像解释型语言一样,由解释器将代码一句... 一、前言 编程语言可以分为两种,编译语言和直译式语言; 编译语言(Compiled language)是一种编程语言类型,通过编译器来实现。它不像解释型语言一样,由解释器将代码一句...
- GPUImage 简介 GPUImage是一个非常牛逼的图像处理的开源库,里面提供了大概125种滤镜效果来加工图像,并且支持照相机和摄像机的实时滤镜,能够满足我们日常美颜/滤镜开效果。通过这样强大的开源... GPUImage 简介 GPUImage是一个非常牛逼的图像处理的开源库,里面提供了大概125种滤镜效果来加工图像,并且支持照相机和摄像机的实时滤镜,能够满足我们日常美颜/滤镜开效果。通过这样强大的开源...
- 一、cache_t 原理 Class 内部中有个方法 缓存 cache_t ,用 散列表 来缓存调用过的方法,可以提高访问方法的速度。 struct cache_t { #if C... 一、cache_t 原理 Class 内部中有个方法 缓存 cache_t ,用 散列表 来缓存调用过的方法,可以提高访问方法的速度。 struct cache_t { #if C...
- SwiftUI 和 Core Data 之间相差将近十年,SwiftUI 随着 iOS 13 面世,而 Core Data 则是 iPhoneOS 3 的产物;很久以前,它还没有被称为 iOS,因为 ... SwiftUI 和 Core Data 之间相差将近十年,SwiftUI 随着 iOS 13 面世,而 Core Data 则是 iPhoneOS 3 的产物;很久以前,它还没有被称为 iOS,因为 ...
- 一、栈区(Stack) ① 特点 栈是系统数据结构,其对应的进程或者线程是唯一的; 栈是向低地址扩展的数据结构; 栈是一块连续的内存区域,遵循先进后出(FILO)原则; 栈的地址空间在 iO... 一、栈区(Stack) ① 特点 栈是系统数据结构,其对应的进程或者线程是唯一的; 栈是向低地址扩展的数据结构; 栈是一块连续的内存区域,遵循先进后出(FILO)原则; 栈的地址空间在 iO...
- 一、前言 从 WebView 开始加载一条请求,到页面完整呈现这一过程发生了什么?无论是做 WebView 性能优化还是异常问题监控与排查,都离不开对WKWebView加载的生命周期与代理方法的剖析。在... 一、前言 从 WebView 开始加载一条请求,到页面完整呈现这一过程发生了什么?无论是做 WebView 性能优化还是异常问题监控与排查,都离不开对WKWebView加载的生命周期与代理方法的剖析。在...
- 在项目中进行身份证号码的校验,首先有必要了解一下居民身份证的基本构成: 长度必须是18位,前17位必须是数字,第十八位可以是数字或X; 前两位必须是以下情形中的一种:11、12、13、14、... 在项目中进行身份证号码的校验,首先有必要了解一下居民身份证的基本构成: 长度必须是18位,前17位必须是数字,第十八位可以是数字或X; 前两位必须是以下情形中的一种:11、12、13、14、...
- 初始化 在 iOS 里面,无论是 Objective-C 还是 Swift,类(结构体、枚举)的初始化都有一定的规则要求,只不过在 Objective-C 中会比较宽松,如果不按照规则也不会报错,但... 初始化 在 iOS 里面,无论是 Objective-C 还是 Swift,类(结构体、枚举)的初始化都有一定的规则要求,只不过在 Objective-C 中会比较宽松,如果不按照规则也不会报错,但...
- 一、Cocoapods 简介 ① Cocoapods 是什么? Cocoapods 是一个运行在 Ruby 环境下,负责管理 iOS 项目中第三方开源库的工具,它可以解决库与库之间的依赖关系,同时... 一、Cocoapods 简介 ① Cocoapods 是什么? Cocoapods 是一个运行在 Ruby 环境下,负责管理 iOS 项目中第三方开源库的工具,它可以解决库与库之间的依赖关系,同时...
- 一、自动释放池 autoreleasepool 原理 自动释放池是 OC 中的一种内存自动回收机制,它可以将加入 autoreleasePool 中的变量 release 的时机延迟。 简单来说,... 一、自动释放池 autoreleasepool 原理 自动释放池是 OC 中的一种内存自动回收机制,它可以将加入 autoreleasePool 中的变量 release 的时机延迟。 简单来说,...
上滑加载中
推荐直播
-
华为云码道 × 仓颉编程:工程化AI编码探索2026/05/27 周三 19:00-21:00
刘俊杰-华为云仓颉语言专家/李炎-华为云码道技术专家/王智鹏-OpenCangjie开源社区发起人
本场直播围绕华为云仓颉语言与华为云码道的深度结合,展示华为云智能编程从零基础到高效落地的完整生态能力。以华为云码道为引擎,仓颉语言为载体,带给大家日常提效、趣味创新到极速量产的开发体验。
回顾中
热门标签