注册
环信即时通讯云

环信即时通讯云

单聊、群聊、聊天室...
环信开发文档

环信开发文档

环信FAQ

环信FAQ

集成常见问题及答案
RTE开发者社区

RTE开发者社区

汇聚音视频领域技术干货,分享行业资讯
技术讨论区

技术讨论区

技术交流、答疑
资源下载

资源下载

收集了海量宝藏开发资源
iOS Library

iOS Library

不需要辛辛苦苦的去找轮子, 这里都有
Android Library

Android Library

不需要辛辛苦苦的去找轮子, 这里都有
0
评论

iOS KVO的基本使用 iOS

雨淋湿了天空 发表了文章 • 893 次浏览 • 2021-09-14 09:39 • 来自相关话题

iOS - 关于 KVO 的一些总结1. 什么是 KVOKVO的全称是Key-Value Observing,俗称“键值观察/监听”,是苹果提供的一套事件通知机制,允许一个对象观察/监听另一个对象指定属性值的改变。当被观察对象属性值发生改变时,会触发KVO的监... ...查看全部
0
评论

ios Category无法覆写系统方法? iOS

雨淋湿了天空 发表了文章 • 937 次浏览 • 2021-09-14 09:37 • 来自相关话题

Category无法覆写系统方法?这是一次非常有趣的解决问题经历,以至于我认为解决方式可能比问题本身更有意思,另一点就是人多力量大,多人讨论就会获得多种思路。首次提出这个问题的是反向抽烟,他遇到了不能用 Category 覆写系统方法的现象。问题抛到我这,我验... ...查看全部
0
评论

iOS14开发-网络 iOS

雨淋湿了天空 发表了文章 • 800 次浏览 • 2021-09-14 09:34 • 来自相关话题

基础知识App如何通过网络请求数据?App 通过一个 URL 向特定的主机发送一个网络请求加载需要的资源。URL 一般是使用 HTTP(HTTPS)协议,该协议会通过 IP(或域名)定位到资源所在的主机,然后等待主机处理和响应。主机通过本次网络请求指... ...查看全部
0
评论

Swift 5.5 新特性 iOS

雨淋湿了天空 发表了文章 • 788 次浏览 • 2021-09-13 10:08 • 来自相关话题

Swift 5.5 内置于 Xcode 13,虽然版本号只增加了 0.1,看似是一个小版本升级,但却带来了非常多的新内容,其中最大的更新是引入了全新的并发编程方式。条件编译支持表达式SwiftUI 在跨平台时会使用到条件 Modifier,之前的解决方案是自己... ...查看全部
0
评论

iOS - Core Graphics快速入门——从一行代码说起 iOS

雨淋湿了天空 发表了文章 • 983 次浏览 • 2021-09-13 10:04 • 来自相关话题

Core Graphics入门想必每个第一次接触Core Graphics的开发者都被无数的API、混乱的代码逻辑折腾得头疼不已,甚至望而却步。即使是绘制一个简单的矩形也看上去非常繁琐。本文换一个角度,整理一下有关Core Graphics的知识,也算作是这段... ...查看全部
0
评论

iOS - 绘图框架CoreGraphics分析 iOS

雨淋湿了天空 发表了文章 • 813 次浏览 • 2021-09-13 10:02 • 来自相关话题

由于CoreGraphics框架有太多的API,对于初次接触或者对该框架不是十分了解的人,在绘图时,对API的选择会感到有些迷茫,甚至会觉得iOS的图形绘制有些繁琐。因此,本文主要介绍一下iOS的绘图方法和分析一下CoreGraphics框架的绘图原理。一、绘... ...查看全部
0
评论

Swift算法俱乐部:Swift队列数据结构(Queue) iOS 算法

雨淋湿了天空 发表了文章 • 873 次浏览 • 2021-09-08 10:21 • 来自相关话题

准备开始队列(Queue)是一个列表,您只能在后面插入新项目并从前面删除项目。 这可确保入队的第一个元素也是首先出队的元素。 先到先出在许多算法中,我们希望在某个时间点将项目添加到临时列表中,然后在以后再次将它们从列表中拉出。 添加和删除这些项目的顺序非常重要... ...查看全部
0
评论

iOS 类方法load和initialize的区别 iOS OC代码小技巧

雨淋湿了天空 发表了文章 • 864 次浏览 • 2021-09-08 09:54 • 来自相关话题

Objective-C作为一门面向对象语言,有类和对象的概念。编译后,类相关的数据结构会保留在目标文件中,在运行时得到解析和使用。在应用程序运行起来的时候,类的信息会有加载和初始化过程。就像Application有生命周期回调方法一样,在Objective-C... ...查看全部
0
评论

iOS - swift常用的关键词解释和用法 iOS swift常用的关键词解释和用法

雨淋湿了天空 发表了文章 • 1006 次浏览 • 2021-09-07 10:13 • 来自相关话题

deinit: 当一个类的实例即将被销毁时,会调用这个方法。class Person { var name:String var age:Int var gender:String deinit {... ...查看全部
0
评论

iOS 常用技巧 iOS OC代码小技巧

雨淋湿了天空 发表了文章 • 854 次浏览 • 2021-09-07 10:06 • 来自相关话题

1、递归查看 view 的子视图(私有方法,没有代码提示)[self.view recursiveDescription] 2、// 定义一个特殊字符的集合 NSCharacterSet *set = [NSCharacterSet characterSet... ...查看全部
0
评论

iOS - 图层性能 二 iOS 核心动画

雨淋湿了天空 发表了文章 • 1063 次浏览 • 2021-09-07 10:01 • 来自相关话题

混合和过度绘制    在第12章有提到,GPU每一帧可以绘制的像素有一个最大限制(就是所谓的fill rate),这个情况下可以轻易地绘制整个屏幕的所有像素。但是如果由于重叠图层的关系需要不停地重绘同一区域的话,掉帧就可... ...查看全部
0
评论

iOS - 图层性能 一 iOS 核心动画

雨淋湿了天空 发表了文章 • 815 次浏览 • 2021-09-06 10:09 • 来自相关话题

隐式绘制    寄宿图可以通过Core Graphics直接绘制,也可以直接载入一个图片文件并赋值给contents属性,或事先绘制一个屏幕之外的CGContext上下文。在之前的两章中我们讨论了这些场景下的优化。但是除... ...查看全部
0
评论

iOS - 图像IO 三 iOS 核心动画

雨淋湿了天空 发表了文章 • 809 次浏览 • 2021-09-06 10:07 • 来自相关话题

文件格式    图片加载性能取决于加载大图的时间和解压小图时间的权衡。很多苹果的文档都说PNG是iOS所有图片加载的最好格式。但这是极度误导的过时信息了。    PNG图片使用的无... ...查看全部
0
评论

iOS - 图像IO 二 iOS 核心动画

雨淋湿了天空 发表了文章 • 709 次浏览 • 2021-09-06 10:06 • 来自相关话题

缓存    如果有很多张图片要显示,最好不要提前把所有都加载进来,而是应该当移出屏幕之后立刻销毁。通过选择性的缓存,你就可以避免来回滚动时图片重复性的加载了。    缓存其实很简单... ...查看全部
0
评论

iOS - 图像IO 一 iOS 核心动画

雨淋湿了天空 发表了文章 • 756 次浏览 • 2021-09-03 09:48 • 来自相关话题

图像IO潜伏期值得思考 - 凯文 帕萨特    在第13章“高效绘图”中,我们研究了和Core Graphics绘图相关的性能问题,以及如何修复。和绘图性能相关紧密相关的是图像性能。在这一章中,我们将研究如何优... ...查看全部
0
评论

iOS - 高效绘图四 iOS 核心动画

雨淋湿了天空 发表了文章 • 738 次浏览 • 2021-09-03 09:47 • 来自相关话题

异步绘制    UIKit的单线程天性意味着寄宿图通畅要在主线程上更新,这意味着绘制会打断用户交互,甚至让整个app看起来处于无响应状态。我们对此无能为力,但是如果能避免用户等待绘制完成就好多了。  ... ...查看全部
0
评论

iOS - 高效绘图三 iOS 核心动画

雨淋湿了天空 发表了文章 • 682 次浏览 • 2021-09-03 09:46 • 来自相关话题

脏矩形    有时候用CAShapeLayer或者其他矢量图形图层替代Core Graphics并不是那么切实可行。比如我们的绘图应用:我们用线条完美地完成了矢量绘制。但是设想一下如果我们能进一步提高应用的性能,让它就像... ...查看全部
0
评论

iOS 高效绘图 二 iOS 核心动画

雨淋湿了天空 发表了文章 • 717 次浏览 • 2021-09-02 09:37 • 来自相关话题

异步绘制    UIKit的单线程天性意味着寄宿图通畅要在主线程上更新,这意味着绘制会打断用户交互,甚至让整个app看起来处于无响应状态。我们对此无能为力,但是如果能避免用户等待绘制完成就好多了。  ... ...查看全部
0
评论

iOS 高效绘图 一 iOS 核心动画

雨淋湿了天空 发表了文章 • 844 次浏览 • 2021-09-02 09:37 • 来自相关话题

高效绘图不必要的效率考虑往往是性能问题的万恶之源。 ——William Allan Wulf    在第12章『速度的曲率』我们学习如何用Instruments来诊断Core Animation性能问题。在构建一个iOS... ...查看全部
0
评论

iOS 性能调优 三 iOS 核心动画

雨淋湿了天空 发表了文章 • 886 次浏览 • 2021-09-02 09:35 • 来自相关话题

Instruments    Instruments是Xcode套件中没有被充分利用的一个工具。很多iOS开发者从没用过Instruments,或者只是用Leaks工具检测循环引用。实际上有很多Instruments工具... ...查看全部
1
回复

ios打包失败找不到库

YCJ 回复了问题 • 1 人关注 • 821 次浏览 • 2021-09-01 19:40 • 来自相关话题

0
评论

iOS 性能调优 二 iOS 核心动画

雨淋湿了天空 发表了文章 • 717 次浏览 • 2021-08-30 09:28 • 来自相关话题

12.2 测量,而不是猜测    于是现在你知道有哪些点可能会影响动画性能,那该如何修复呢?好吧,其实不需要。有很多种诡计来优化动画,但如果盲目使用的话,可能会造成更多性能上的问题,而不是修复。  &... ...查看全部
0
评论

iOS 性能调优 一 iOS 核心动画

雨淋湿了天空 发表了文章 • 784 次浏览 • 2021-08-30 09:27 • 来自相关话题

性能调优代码应该运行的尽量快,而不是更快 - 理查德    在第一和第二部分,我们了解了Core Animation提供的关于绘制和动画的一些特性。Core Animation功能和性能都非常强大,但如果你对背... ...查看全部
0
评论

iOS 基于定时器的动画 二 iOS 核心动画

雨淋湿了天空 发表了文章 • 801 次浏览 • 2021-08-30 09:26 • 来自相关话题

11.2 物理模拟即使使用了基于定时器的动画来复制第10章中关键帧的行为,但还是会有一些本质上的区别:在关键帧的实现中,我们提前计算了所有帧,但是在新的解决方案中,我们实际上实在按需要在计算。意义在于我们可以根据用户输入实时修改动画的逻辑,或者和别的实时动画系... ...查看全部
0
评论

iOS 基于定时器的动画 一 iOS 核心动画

雨淋湿了天空 发表了文章 • 765 次浏览 • 2021-08-27 10:08 • 来自相关话题

基于定时器的动画我可以指导你,但是你必须按照我说的做。 -- 骇客帝国    在第10章“缓冲”中,我们研究了CAMediaTimingFunction,它是一个通过控制动画缓冲来模拟物理效果例如加速或者减速来... ...查看全部
0
评论

iOS 缓冲 二 iOS 核心动画

雨淋湿了天空 发表了文章 • 778 次浏览 • 2021-08-27 10:06 • 来自相关话题

10.2 自定义缓冲函数在第八章中,我们给时钟项目添加了动画。看起来很赞,但是如果有合适的缓冲函数就更好了。在显示世界中,钟表指针转动的时候,通常起步很慢,然后迅速啪地一声,最后缓冲到终点。但是标准的缓冲函数在这里每一个适合它,那该如何创建一个新的呢?除了+f... ...查看全部
0
评论

iOS 缓冲 一 iOS 核心动画

雨淋湿了天空 发表了文章 • 680 次浏览 • 2021-08-27 10:05 • 来自相关话题

缓冲生活和艺术一样,最美的永远是曲线。 -- 爱德华布尔沃 - 利顿在第九章“图层时间”中,我们讨论了动画时间和CAMediaTiming协议。现在我们来看一下另一个和时间相关的机制--所谓的缓冲。Core Animation使用缓冲来使动画移动更平滑更自然,... ...查看全部
0
评论

iOS - 图层时间 二 iOS 核心动画

雨淋湿了天空 发表了文章 • 818 次浏览 • 2021-08-27 10:04 • 来自相关话题

9.2 层级关系时间在第三章“图层几何学”中,你已经了解到每个图层是如何相对在图层树中的父图层定义它的坐标系的。动画时间和它类似,每个动画和图层在时间上都有它自己的层级概念,相对于它的父亲来测量。对图层调整时间将会影响到它本身和子图层的动画,但不会影响到父图层... ...查看全部
0
评论

iOS 图层时间 一 iOS 核心动画

雨淋湿了天空 发表了文章 • 731 次浏览 • 2021-08-25 09:43 • 来自相关话题

图层时间时间和空间最大的区别在于,时间不能被复用 -- 弗斯特梅里克在上面两章中,我们探讨了可以用CAAnimation和它的子类实现的多种图层动画。动画的发生是需要持续一段时间的,所以计时对整个概念来说至关重要。在这一章中,我们来看看CAMedia... ...查看全部
0
评论

iOS 显示动画 二 iOS 核心动画

雨淋湿了天空 发表了文章 • 787 次浏览 • 2021-08-25 09:42 • 来自相关话题

8.3 过渡有时候对于iOS应用程序来说,希望能通过属性动画来对比较难做动画的布局进行一些改变。比如交换一段文本和图片,或者用一段网格视图来替换,等等。属性动画只对图层的可动画属性起作用,所以如果要改变一个不能动画的属性(比如图片),或者从层级关系中添加或者移... ...查看全部
0
评论

iOS 显式动画 一 iOS 核心动画

雨淋湿了天空 发表了文章 • 784 次浏览 • 2021-08-25 09:40 • 来自相关话题

显式动画如果想让事情变得顺利,只有靠自己 -- 夏尔·纪尧姆上一章介绍了隐式动画的概念。隐式动画是在iOS平台创建动态用户界面的一种直接方式,也是UIKit动画机制的基础,不过它并不能涵盖所有的动画类型。在这一章中,我们将要研究一下显式动画,它能够对一些属性做... ...查看全部
0
评论

iOS 隐式动画 二 iOS 核心动画

雨淋湿了天空 发表了文章 • 737 次浏览 • 2021-08-24 10:19 • 来自相关话题

图层行为现在来做个实验,试着直接对UIView关联的图层做动画而不是一个单独的图层。清单7.4是对清单7.2代码的一点修改,移除了colorLayer,并且直接设置layerView关联图层的背景色。清单7.4 直接设置图层的属性@interface View... ...查看全部
0
评论

iOS 隐式动画 一 iOS 核心动画

雨淋湿了天空 发表了文章 • 860 次浏览 • 2021-08-24 10:17 • 来自相关话题

隐式动画按照我的意思去做,而不是我说的。 -- 埃德娜,辛普森我们在第一部分讨论了Core Animation除了动画之外可以做到的任何事情。但是动画是Core Animation库一个非常显著的特性。这一章我们来看看它是怎么做到的。具体来说,我们先... ...查看全部
0
评论

iOS 专用图层 八 iOS 核心动画

雨淋湿了天空 发表了文章 • 762 次浏览 • 2021-08-24 10:15 • 来自相关话题

6.10 AVPlayerLayer最后一个图层类型是AVPlayerLayer。尽管它不是Core Animation框架的一部分(AV前缀看上去像),AVPlayerLayer是有别的框架(AVFoundation)提供的,它和Core Animation... ...查看全部
0
评论

iOS 专用图层 七 iOS 核心动画

雨淋湿了天空 发表了文章 • 739 次浏览 • 2021-08-24 10:14 • 来自相关话题

6.9 CAEAGLLayer当iOS要处理高性能图形绘制,必要时就是OpenGL。应该说它应该是最后的杀手锏,至少对于非游戏的应用来说是的。因为相比Core Animation和UIkit框架,它不可思议地复杂。OpenGL提供了Core Animation... ...查看全部
0
评论

iOS 专用图层 六 iOS 核心动画

雨淋湿了天空 发表了文章 • 791 次浏览 • 2021-08-23 09:31 • 来自相关话题

6.8 CAEmitterLayer在iOS 5中,苹果引入了一个新的CALayer子类叫做CAEmitterLayer。CAEmitterLayer是一个高性能的粒子引擎,被用来创建实时例子动画如:烟雾,火,雨等等这些效果。CAEmitterLayer看上去... ...查看全部
0
评论

iOS 专用图层 五 iOS 核心动画

雨淋湿了天空 发表了文章 • 844 次浏览 • 2021-08-23 09:30 • 来自相关话题

6.6 CAScrollLayer对于一个未转换的图层,它的bounds和它的frame是一样的,frame属性是由bounds属性自动计算而出的,所以更改任意一个值都会更新其他值。但是如果你只想显示一个大图层里面的一小部分呢。比如说,你可能有一个很大的图片,... ...查看全部
0
评论

iOS 专用图层 四 iOS 核心动画

雨淋湿了天空 发表了文章 • 988 次浏览 • 2021-08-23 09:29 • 来自相关话题

6.5 CAReplicatorLayerCAReplicatorLayer的目的是为了高效生成许多相似的图层。它会绘制一个或多个图层的子图层,并在每个复制体上应用不同的变换。看上去演示能够更加解释这些,我们来写个例子吧。重复图层(Repeating Laye... ...查看全部
0
评论

iOS 专用图层 三 iOS 核心动画

雨淋湿了天空 发表了文章 • 740 次浏览 • 2021-08-23 09:28 • 来自相关话题

6.3 CATransformLayer当我们在构造复杂的3D事物的时候,如果能够组织独立元素就太方便了。比如说,你想创造一个孩子的手臂:你就需要确定哪一部分是孩子的手腕,哪一部分是孩子的前臂,哪一部分是孩子的肘,哪一部分是孩子的上臂,哪一部分是孩子的肩膀等等... ...查看全部
0
评论

iOS 专用图层 二 iOS 核心动画

雨淋湿了天空 发表了文章 • 736 次浏览 • 2021-08-21 11:38 • 来自相关话题

6.2 CATextLayer用户界面是无法从一个单独的图片里面构建的。一个设计良好的图标能够很好地表现一个按钮或控件的意图,不过你迟早都要需要一个不错的老式风格的文本标签。如果你想在一个图层里面显示文字,完全可以借助图层代理直接将字符串使用Core Grap... ...查看全部
0
评论

iOS 专用图层 一 iOS 核心动画

雨淋湿了天空 发表了文章 • 740 次浏览 • 2021-08-21 11:37 • 来自相关话题

专用图层复杂的组织都是专门化的Catharine R. Stimpson到目前为止,我们已经探讨过CALayer类了,同时我们也了解到了一些非常有用的绘图和动画功能。但是Core Animation图层不仅仅能作用于图片和颜色而已。本章就会学习其他的一些图层类... ...查看全部
0
评论

iOS 变化 三 iOS 核心动画

雨淋湿了天空 发表了文章 • 789 次浏览 • 2021-08-21 11:36 • 来自相关话题

5.3 固体对象现在你懂得了在3D空间的一些图层布局的基础,我们来试着创建一个固态的3D对象(实际上是一个技术上所谓的空洞对象,但它以固态呈现)。我们用六个独立的视图来构建一个立方体的各个面。在这个例子中,我们用Interface Builder来构建立方体的... ...查看全部
0
评论

iOS 变化 二 iOS 核心动画

雨淋湿了天空 发表了文章 • 899 次浏览 • 2021-08-21 11:34 • 来自相关话题

5.2 3D变换CG的前缀告诉我们,CGAffineTransform类型属于Core Graphics框架,Core Graphics实际上是一个严格意义上的2D绘图API,并且CGAffineTransform仅仅对2D变换有效。在第三章中,我们提到了zP... ...查看全部
0
评论

iOS 变化 一 iOS 核心动画

雨淋湿了天空 发表了文章 • 848 次浏览 • 2021-08-20 10:22 • 来自相关话题

变换很不幸,没人能告诉你母体是什么,你只能自己体会 -- 骇客帝国在第四章“可视效果”中,我们研究了一些增强图层和它的内容显示效果的一些技术,在这一章中,我们将要研究可以用来对图层旋转,摆放或者扭曲的CGAffineTransform,以及可以将扁平... ...查看全部
0
评论

iOS 视觉效果 四 iOS 核心动画

雨淋湿了天空 发表了文章 • 763 次浏览 • 2021-08-20 10:20 • 来自相关话题

4.6 组透明    UIView有一个叫做alpha的属性来确定视图的透明度。CALayer有一个等同的属性叫做opacity,这两个属性都是影响子层级的。也就是说,如果你给一个图层设置了opacity属性,那它的子图... ...查看全部
0
评论

iOS 视觉效果 三 iOS 核心动画

雨淋湿了天空 发表了文章 • 814 次浏览 • 2021-08-20 10:19 • 来自相关话题

4.4 图层蒙板    通过masksToBounds属性,我们可以沿边界裁剪图形;通过cornerRadius属性,我们还可以设定一个圆角。但是有时候你希望展现的内容不是在一个矩形或圆角矩形。比如,你想展示一个有星形框... ...查看全部
0
评论

iOS 视觉效果 二 iOS 核心动画

雨淋湿了天空 发表了文章 • 842 次浏览 • 2021-08-20 10:18 • 来自相关话题

4.2 图层边框  &nbp; CALayer另外两个非常有用属性就是borderWidth和borderColor。二者共同定义了图层边的绘制样式。这条线(也被称作stroke)沿着图层的bounds绘制,同时也包含图层... ...查看全部
0
评论

iOS 视觉效果 一 iOS 核心动画

雨淋湿了天空 发表了文章 • 657 次浏览 • 2021-08-18 10:12 • 来自相关话题

视觉效果嗯,圆和椭圆还不错,但如果是带圆角的矩形呢?我们现在能做到那样了么?史蒂芬·乔布斯    我们在第三章『图层几何学』中讨论了图层的frame,第二章『寄宿图』则讨论了图层的寄宿图。但是图层不仅仅可以是图片或是颜色... ...查看全部
0
评论

iOS 图形几何学 三 iOS 核心动画

雨淋湿了天空 发表了文章 • 720 次浏览 • 2021-08-18 10:10 • 来自相关话题

3.5 自动布局    你可能用过UIViewAutoresizingMask类型的一些常量,应用于当父视图改变尺寸的时候,相应UIView的frame也跟着更新的场景(通常用于横竖屏切换)。  &n... ...查看全部
0
评论

iOS 图形几何学 二 iOS 核心动画

雨淋湿了天空 发表了文章 • 850 次浏览 • 2021-08-18 10:09 • 来自相关话题

3.3 坐标系和视图一样,图层在图层树当中也是相对于父图层按层级关系放置,一个图层的position依赖于它父图层的bounds,如果父图层发生了移动,它的所有子图层也会跟着移动。这样对于放置图层会更加方便,因为你可以通过移动根图层来将它的子图层作为一个整体来... ...查看全部