iOS-高级
文章平均质量分 94
mazegong
以前博客丢了,只能找到一些最开始的文章了
展开
-
CIFilter 滤镜详解
全部分类CORE_IMAGE_EXPORT NSString * const kCICategoryDistortionEffect;CORE_IMAGE_EXPORT NSString * const kCICategoryGeometryAdjustment;CORE_IMAGE_EXPORT NSString * const kCICategoryCompositeOperation;CORE_IMAGE_EXPORT NSString * const kCICategoryHalft原创 2020-09-09 13:42:05 · 1638 阅读 · 0 评论 -
H264视频压缩算法简析
H264视频压缩算法现在无疑是所有视频压缩技术中使用最广泛,最流行的。随着 x264/openh264以及ffmpeg等开源库的推出,大多数使用者无需再对H264的细节做过多的研究,这大降低了人们使用H264的成本。但为了用好H264,我们还是要对H264的基本原理弄清楚才行。今天我们就来看看H264的基本原理。H264概述H264压缩技术主要采用了以下几种方法对视频数据进行压...转载 2019-11-06 18:03:39 · 7297 阅读 · 0 评论 -
算法的时间复杂度和空间复杂度详解
算法的时间复杂度和空间复杂度合称为算法的复杂度。1.时间复杂度(1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或转载 2017-07-20 17:09:11 · 311 阅读 · 0 评论 -
weak的生命周期:具体实现方法
我们都知道weak表示的是一个弱引用,这个引用不会增加对象的引用计数,并且在所指向的对象被释放之后,weak指针会被设置的为nil。weak引用通常是用于处理循环引用的问题,如代理及block的使用中,相对会较多的使用到weak。之前对weak的实现略有了解,知道它的一个基本的生命周期,但具体是怎么实现的,了解得不是太清晰。今天又翻了翻《Objective-C高级编程》关于__weak转载 2017-04-12 10:24:30 · 306 阅读 · 0 评论 -
深入理解RunLoop
RunLoop 是 iOS 和 OS X 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹果是如何利用 RunLoop 实现自动释放池、延迟回调、触摸事件、屏幕刷新等功能的。目录RunLoop 的概念RunLoop 与线程的关系RunLoop 对转载 2017-04-12 09:52:43 · 194 阅读 · 0 评论 -
iSO 集合遍历常用的方法和比较
ios中常用的遍历运算方法遍历的目的是获取集合中的某个对象或执行某个操作,所以能满足这个条件的方法都可以作为备选:经典for循环for in (NSFastEnumeration),若不熟悉可以参考《nshipster介绍NSFastEnumeration的文章》makeObjectsPerformSelectorkvc集合运算符enumerateObjectsUsingBlocken原创 2016-11-24 18:28:35 · 802 阅读 · 1 评论 -
iOS 后台持续定位详解(支持ISO9.0以上)
#import 并实现CLLocationManagerDelegate 代理,.h文件完整代码如下:[objc] view plain copy#import #import @interface ViewController : UIViewController @end 2.i原创 2016-12-13 14:14:21 · 4943 阅读 · 2 评论 -
iOS const,static,extern的用法
1.const: 被const修饰的变量是只读的(变量->只读变量)未修饰前 (没什么可说的)被const修饰之后笔试题2.static的作用:定义所修饰的对象只能在当前文件访问,不能同过extern来引用默认情况下的全局变量 作用域是整个程序(可以通过extern来引用) 被static修饰后仅限于当前文件来引用原创 2016-08-11 10:02:14 · 358 阅读 · 0 评论 -
iOS runLoop 详细解说
学习iOS开发一般都是从UI开始的,从只知道从IB拖控件,到知道怎么在方法里写代码,然后会显示什么样的视图,产生什么样的事件,等等。其实程序从启动开始,一直都是按照苹果封装好的代码运行着,暴露的一些属性和方法作为接口,是让我们在给定的方法里写代码实现自定义功能,做出各种各样的应用。这些方法的调用顺序最为关键,熟悉了程序运转和方法调用的顺序,才可以更好地操控程序和代码,尽量避免Xcode不报错又实现转载 2016-07-26 16:50:34 · 852 阅读 · 0 评论 -
iOS收到推送消息后跳到指定的页面
最近在搞极光推送,之前用的百度推送,但是消息延迟的厉害,就换了极光,换就换吧,无所谓反正我不会,于是就开始看极光推送文档,心里骂着跟百度的文档详细程度不能比啊,文档很短一会儿就看完,其实文档的主要代码这些推送平台都一样,说到这我想吐槽一下,本来以为推送很容易,实际就是容易,但是被后台和安卓开发人员弄的我一头雾水,一阵恼火!刚开始后台返回的是推送消息是一段JSON数据,其实正确的就应该返回JSON数转载 2016-07-01 16:18:39 · 5429 阅读 · 0 评论 -
iOS 宏(define)与const的正确用法
在iOS开发中,经常用到宏定义,或用const修饰一些数据类型,经常有开发者不知怎么正确使用,导致项目中乱用宏与const修饰你能区分下面的吗?知道什么时候用吗?#define HSCoder @"汉斯哈哈哈"NSString *HSCoder = @"汉斯哈哈哈";extern NSString *HSCoder;extern const NSString *HSCoder;s原创 2016-06-07 09:27:20 · 348 阅读 · 0 评论 -
iOS 身份证校验详解
返回YES 就证明通过+ (BOOL)checkIdCodeWith:(NSString *)string{ if (string.length == 0) { return NO; } if (string.length == 15 || string.length == 18) { } else { return NO;原创 2016-06-02 09:57:51 · 687 阅读 · 0 评论 -
iOS 离屏渲染研究
GPU渲染机制:CPU 计算好显示内容提交到 GPU,GPU 渲染完成后将渲染结果放入帧缓冲区,随后视频控制器会按照 VSync 信号逐行读取帧缓冲区的数据,经过可能的数模转换传递给显示器显示。GPU屏幕渲染有以下两种方式:On-Screen Rendering意为当前屏幕渲染,指的是GPU的渲染操作是在当前用于显示的屏幕缓冲区中进行。Off-Screen Re转载 2016-05-30 16:55:49 · 308 阅读 · 0 评论 -
iOS NSURLSession 详解
一:NSURLSession类似之前的NSURLConnection, 可配置每个session的 cookie,证书等网络连接配置信息 NSURLSessionConfiguration包含三大任务 :NSURLSessionTask--(NSURLSessionDataTask,NSURLSessionUploadTask,NSURLSessionDownloadTask)原创 2016-05-30 15:18:34 · 462 阅读 · 0 评论 -
iOS 图书动画
原文链接 : How to Create an iOS Book Open Animation: Part 2原文作者 : Vincent Ngo译文出自 : 开发技术前线 www.devtf.cn转载声明: 本译文已授权开发者头条享有独家转载权,未经允许,不得转载!译者 : kmyhy欢迎回到iOS图书动画系列教程!在第一部分,我们学习了如何创建两个自定义的collection view转载 2016-05-27 15:13:10 · 371 阅读 · 0 评论 -
如何做ios分形App
如何做一个iOS分形App原文链接 : 如何做一个iOS分形App原文作者 : Silviu Pop译文出自 : 开发技术前线 www.devtf.cn译者 : alier1226校对者: MrLoong状态 : 完成介绍在这个教程中,我们会做一个可以渲染Mandelbrot Set的应用程序,我们可以缩放和平铺它来看分形那令人惊叹的复杂之美。最终的结果如下:着转载 2016-05-27 15:06:18 · 545 阅读 · 0 评论 -
iOS 通知中心快速回复
iOS8拥有了全新的通知中心,有全新的通知机制。当屏幕顶部收到推送时只需要往下拉,就能看到快速操作界面,并不需要进入该应用才能操作。在锁屏界面,对于推送项目也可以快速处理。基本上就是让用户尽量在不离开当前页面的前提下处理推送信息,再次提高处理效率。能够进行直接互动的短信、邮件、日历、提醒,第三方应用,可以让你不用进入程序就能进行快捷操作,并专注于手中正在做的事情,用户可以做如下操作:在转载 2016-05-27 15:19:24 · 1016 阅读 · 0 评论 -
iOS run loop 详解
RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹果是如何利用 RunLoop 实现自动释放池、延迟回调、触摸事件、屏幕刷新等功能的。RunLoop 的概念一般来讲,一个线程一次只能执行一个任务,执行完成后线程就会退出。如果我们需要一个机制,让线程转载 2016-05-27 15:17:14 · 745 阅读 · 0 评论 -
iOS 动态文本
原文链接 : Swift Programming 101: Mastering Dynamic Type in iOS 8原文作者 : Kevin McNeish译文出自 : 开发技术前线 www.devtf.cn转载声明: 本译文已授权开发者头条享有独家转载权,未经允许,不得转载!译者 : kmyhyApple声称鼓励第三方App能够支持动态文本。但是,如果你尝试在App中实现这个特性,转载 2016-05-27 15:15:30 · 1003 阅读 · 0 评论