Runloop Runloop是iOS系统中的事件循环,它保证了我们的程序不会在main函数执行完后就被退出,(线程保活),可以粗糙地理解成一个while(true)的循环,...
Runloop Runloop是iOS系统中的事件循环,它保证了我们的程序不会在main函数执行完后就被退出,(线程保活),可以粗糙地理解成一个while(true)的循环,...
SideTables 在阅读关于弱引用表weak table相关源码时,我们大概了解了一些关于SideTable的相关知识,知道了他是一个散列表,也就是Key-Value格式...
Runtime 解析 2.0 类与对象的本质 Runtime是Objective-C语言与C语言最大的一个不同,通过Runtime库OC实现了C语言没有的面向对象特性与动态语...
autorelease、autorelease pool以及原理 autorelease与MRC、ARC autorelease:在MRC下,内存管理允许有三个操作,分别是r...
Weak与Weak表 The weak table is a hash table governed by a single spin lock.An allocated b...
在实际开发中,有时候如果我们遇到后台返回的一个URL字符串中带有中文,会导致我们在代码中初始化URL失败。而这在swift里有了巧妙的解决方案——@propertyWrapp...
swift标准库为我们提供了大量的协议,使用这些协议可以让我们的程序更加高效。同时我们也可以从Apple官方实现的协议中学习,从而写出更好的swift程序以及按照自己的需求自...
小组件(Widget)可以在主屏幕上实现内容展示和功能跳转。 系统会向小组件获取时间线(TimeLine),根据当前时间对时间线上的数据进行展示。点击正在展示的视觉元素可以跳...
1.CALayer -- 绘图层 在我们创建UIView时,会自动创建一个绘图层的实例--CALayer,然后再将需要展示的内容绘制到屏幕上。我们通过UIView的layer...
WKWebView是在iOS8之后推出的,意在取代原本的UIWebView。相比于UIWebView,WKWebView的一个显著特点就是占用的系统内存大幅降低,大部分情况不...
Teambition是一个美观易用的团队协作工具。你可以使用它将你的队友加入你的工作空间,并随时发布、分发任务。同时,你也可以随时随地查看任务进度,以及每个成员的进度。 开始...
前言 我们的目标是获得一个看起来较为“轻快”且能融入白色背景的搜索框。效果如图 实现 实现方法其实很简单。 首先,我们获得一个UISearchController实例,并将背...
Cocoapods是什么 Cocoapods是一个为你的项目管理第三方库以及建立和管理lib依赖的工具,可以让你优雅地使用第三方框架。 1.安装 我们用macos自带的gem...
在ios开发中,我们会经常遇到需要在页面A和页面B之间通信的需求,这一需求我们可以用Block、协议、通知等方法实现。今天谈谈通知的用法。 有人会问,既然以上几种方式都可以实...
赋值 | - | NSLog打印str ||: -------------: | :-----:|| NSString *str | str = ...
左划删除、收藏、置顶 在UITableView中,我们可以实现对cell左划后出现按钮的功能,这一功能常被设计为删除、置顶等功能。而在IOS 11及以上的系统中,我们可以更简...
UIImageview切圆角 在ios开发中,UIImageview切圆角的方式据我所知有三种,在这里介绍两种我个人比较喜欢的方式。 第一种:直接设置UIImageview的...