项目中有相似于外卖软件的已点菜品列表,相似于下图:meituan.gif能够看到列表的显示与隐藏,都只能经过按钮触发。不能经过手势驱动。不能设置最小可显示范围。针对以上问题,就有了这个项目。其实以上的需求核心问题就一个,如何优雅的解决:当内容还未到最大可显示范围时,列表里的内容不能滚动;当内容显示到最大的时候,如何不断... 阅读原文php
阅读本文后你将会进一步了解Runtime的实现,享元设计模式的实践,内存数据存储优化,编译内存屏障,多线程无锁读写实现,垃圾回收等相关的技术点。objc_class(Class对象)结构简介熟悉OC语言的Runtime(运行时)机制以及对象方法调用机制的开发者都知道,全部OC方法调用在编译时都会转化为对C函数objc_... 阅读原文html
前言咱们知道静态语言在编译时期,就已经肯定了函数的具体调用,而动态语言要等到运行时期才能真正肯定调用哪一个函数; Objective-C 是一门动态语言,它是经过 Runtime 这个运行时机制来实现的。虽说 Runtime 是相对于底层的机制,可是在项目过程当中也常常用来解决一些问题。下面咱们就来看看利用 Runtim... 阅读原文面试
前言这篇文章里会涉及以下几个方面:一、代码的组织结构,以及为什么要这样写。二、那些场景适合使用子控制器,那些场景应该避免使用子控制器?三、分离UITableView的数据源和UITableViewDataSource协议。四、MVVM的重点是ViewModel,不是响应函数式。五、MVVM中,ReactiveCocoa或... 阅读原文设计模式
背景一直都有用户反馈没法正常联网的问题,通过定位,发现很大一部分用户是由于网络权限被系统关闭,通过资料搜集和排除发现根本缘由是:第一次打开 app 不能访问网络,无任何提示第一次打开 app 直接提示「已为“XXX”关闭网络」第一次打开 app ,用户点错了选择了「不容许」或「WLAN」对于第 1 种状况,出如今 iO... 阅读原文缓存