随笔分类 -  iOS开发

记录iOS开发相关知识
摘要:今天博客的内容比较简单,就是看一下虾米音乐首页中频道选择的一个动画效果的实现。之前用mask写过另外一种Tab切换的一种效果,网易云音乐里边的一种Tab切换效果,详情请移步于"视错觉:从一个看似简单的自定义控件说起"。,下面会对效果进行分析,并且根据自己的理解去实现一个类似的频道选择切换效果。代码会 阅读全文
posted @ 2018-08-28 09:19 青玉伏案 阅读(2128) 评论(0) 推荐(3) 编辑
摘要:如题,今天的博客我们就来记录一下iOS开发中使用MachPort来实现线程间的通信,然后使用该知识点来转发子线程中所发出的Notification。简单的说,MachPort的工作方式其实是将NSMachPort的对象添加到一个线程所对应的RunLoop中,并给NSMachPort对象设置相应的代理 阅读全文
posted @ 2017-12-21 07:59 青玉伏案 阅读(3066) 评论(3) 推荐(2) 编辑
摘要:今天博客的内容就系统的讨论一下Masonry对FSP的影响,以及如何更好的使用Masonry。如果你对iOS开发足够熟悉的话,那么对Masonry框架应该不陌生。简单的说,Masonry的诞生让AutoLayout的使用更为优雅,让控件的布局更为方便。使用辩证的观点来看一个事物的话,凡事都有两面性, 阅读全文
posted @ 2017-11-16 09:46 青玉伏案 阅读(3171) 评论(6) 推荐(2) 编辑
摘要:本篇博客的内容也不算太复杂,算是AutoLayout的一些高级的用法。本篇博客我们主要通过一些示例来看一下AutoLayout中的Content Hugging Priority以及Content Compression Resistance Priority这两个优先级。下方我们先来简单的看一下这 阅读全文
posted @ 2017-10-16 09:27 青玉伏案 阅读(15043) 评论(2) 推荐(4) 编辑
摘要:最近工作比较忙,但是还是出来更新博客了。今天博客中所涉及的内容并不复杂,都是一些平时常见的一些问题,通过这篇博客算是对UITableView中使用定时器的几种方式进行总结。本篇博客会给出在TableView中使用NSTimer或者DispatchSourcer中常见的五种方式。当然下方第一种方式是常 阅读全文
posted @ 2017-09-21 09:20 青玉伏案 阅读(5375) 评论(2) 推荐(2) 编辑
摘要:上篇博客我们聊了《资讯类App常用分类控件的封装与实现(CollectionView+Swift3.0)》,今天的这篇博客就在上篇博客的基础上做些东西。做一个完整的资讯类App中的分类展示、分类切换、分类编辑这一套东西。当然,主要我们还是使用灵活多变的CollectionView来实现。下方我们将会 阅读全文
posted @ 2017-06-15 09:57 青玉伏案 阅读(3156) 评论(0) 推荐(3) 编辑
摘要:今天博客中,我们就来实现一下一些常用资讯类App中常用的分类选择的控件的封装。本篇博客中没有使用到什么新的技术点,如果非得说用到了什么新的技术点的话,那么勉强的说,用到了一些iOS9以后UICollectionView添加的一些新的特性。本篇博客所涉及的技术点主要有UICollectionView的 阅读全文
posted @ 2017-06-13 10:35 青玉伏案 阅读(2873) 评论(0) 推荐(3) 编辑
摘要:上篇博客我们类比着Java的Spring框架中的依赖注入的实现方式,也试着使用Objective-C来写了一下OC中的依赖注入的实现方式。当然,我们是使用的PList文件来加载的依赖注入时用到的依赖关系。本篇博客我们就来实现一下OC中的AOP编程。上篇博客我们对AOP(Aspect Oriented 阅读全文
posted @ 2017-03-15 09:13 青玉伏案 阅读(2835) 评论(1) 推荐(3) 编辑
摘要:如果你之前使用过JavaEE开发中的Spring框架的话,那么你一定对依赖注入并不陌生。依赖注入(DI: Dependency Injection)是控制反转(IoC: Inversion of Control)的实现方式之一,另外一种是依赖查找(DL: Dependency Lookup)。当然在 阅读全文
posted @ 2017-03-08 09:11 青玉伏案 阅读(2251) 评论(2) 推荐(3) 编辑
摘要:本篇博客比较简单,但还是比较实用的。其中的示例依然使用Swift3.0来实现,该博客算是下篇博客的一个引子,因为我们下篇博客要介绍使用Swift开发iOS应用中常用的一些Extension。而在这些Extension中的Image Extension中会用到仿射变换的东西来对图片进行处理。所以本篇博 阅读全文
posted @ 2017-03-02 09:34 青玉伏案 阅读(1612) 评论(1) 推荐(3) 编辑
摘要:经常有小伙伴私下在Q上问一些关于Runtime的东西,问我有没有Runtime的相关博客,之前还真没正儿八经的总结过。之前只是在解析第三方框架源码时,聊过一些用法,也就是这些第三方框架中用到的Runtime。比如属性关联,动态获取属性等等。本篇博客就针对Runtime这个主题来总结一些其常用的一些方 阅读全文
posted @ 2017-02-23 09:37 青玉伏案 阅读(5065) 评论(1) 推荐(3) 编辑
摘要:本篇博客就来介绍一下iOS App中主题切换的常规做法,当然本篇博客中只是提到了一种主题切换的方法,当然还有其他方法,在此就不做过多赘述了。本篇博客中所涉及的Demo完全使用Swift3.0编写完成,并使用iOS的NSNotification来触发主题切换的动作。本篇博客我们先对我们的主题系统进行设 阅读全文
posted @ 2017-02-20 09:23 青玉伏案 阅读(5919) 评论(3) 推荐(3) 编辑
摘要:上篇博客《iOS可视化动态绘制八种排序过程》可视化了一下一些排序的过程,本篇博客就来聊聊图的东西。在之前的博客中详细的讲过图的相关内容,比如《图的物理存储结构与深搜、广搜》。当然之前写的程序是比较抽象的。上篇博客我们以可视化的方式看了一下各种排序的过程,今天博客中我们就来可视化的看一下图的相关部分, 阅读全文
posted @ 2016-12-29 09:13 青玉伏案 阅读(4447) 评论(9) 推荐(12) 编辑
摘要:前面几篇博客都是关于排序的,在之前陆陆续续发布的博客中,我们先后介绍了冒泡排序、选择排序、插入排序、希尔排序、堆排序、归并排序以及快速排序。俗话说的好,做事儿要善始善终,本篇博客就算是对之前那几篇博客的总结了。而本篇博客的示例Demo也是在之前那些博客Demo的基础上做的,也算是集成了各种排序的方法 阅读全文
posted @ 2016-12-23 09:28 青玉伏案 阅读(4317) 评论(10) 推荐(5) 编辑
摘要:本篇博客的主题是关于UI操作流畅度优化的一篇博客,我们以TableView中填充多个根据内容自适应高度的Cell来作为本篇博客的使用场景。当然Cell高度的自适应网上的解决方案是铺天盖地呢,今天我们的重点不是如何讨论Cell高度的自适应,而是给出几种Cell高度自适应的解决方案,然后对比起UI流畅度 阅读全文
posted @ 2016-10-08 09:33 青玉伏案 阅读(18639) 评论(7) 推荐(4) 编辑
摘要:上篇博客《iOS逆向工程之KeyChain与Snoop-it》中已经提到了,App间的数据共享可以使用KeyChian来实现。本篇博客就实战一下呢。开门见山,本篇博客会封装一个登录用的SDK, 该登录SDK中包括登录、注册、忘记密码等功能,当然该SDK中包括这些功能的UI、数据验证等业务逻辑、网络请 阅读全文
posted @ 2016-09-02 09:15 青玉伏案 阅读(4510) 评论(2) 推荐(5) 编辑
摘要:今天博客的主题是Keychain, 在本篇博客中会通过一个登陆的Demo将用户名密码存入到KeyChain中,并且查看一下KeyChain中存的是什么东西,把这些内容给导出来。当然本篇博客的重点不是如何使用Keychain来存储你的用户名和密码了。不过今天的博客中会用到这些知识。Apple的开发着文 阅读全文
posted @ 2016-08-26 10:02 青玉伏案 阅读(6486) 评论(10) 推荐(5) 编辑
摘要:之前发表过一篇关于视错觉的文章:《视错觉:从一个看似简单的自定义控件说起》,虽然不是用iOS开发中的Mask来实现的,但是原理和Mask原理是一样的,相当于手动给上面一层加了个Mask。当然用mask完全可以实现上篇博客中的效果,无论是使用Mask还是不使用Mask,都是利用了视错觉,都是两层不一样 阅读全文
posted @ 2016-08-10 09:14 青玉伏案 阅读(6616) 评论(4) 推荐(20) 编辑
摘要:今天博客中的Alamofire源码的版本是以3.4版本为例。上篇博客系统的对NSURLSession相关的东西进行了详细的解析,详情请看《详解NSURLSession》,为了就是给本篇博客打下基础。因为AlamoFire就是对NSURLSession及其相关的东西进行了进一步的封装,让网络请求使用起 阅读全文
posted @ 2016-08-08 09:57 青玉伏案 阅读(5912) 评论(1) 推荐(5) 编辑
摘要:今天博客的主题不是Alamofire, 而是iOS网络编程中经常使用的NSURLSession。如果你想看权威的NSURLSession的东西,那么就得去苹果官方的开发中心去看了,虽然是英文的,但是结合代码理解应该不难。更详细的信息请移步于苹果官方介绍URL Loading System,网上好多i 阅读全文
posted @ 2016-08-01 09:15 青玉伏案 阅读(4065) 评论(0) 推荐(7) 编辑