IOS开发之代码之九宫格

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS开发之代码之九宫格相关的知识,希望对你有一定的参考价值。

通过UIScrollView展示图片的时候,如果直接向UIScrollView添加UIImageView,在图片数量比较少的时候是没有问题的,但是当我们添加图片数量非常多的时候,会占用大量的内存,我们就来讲一下怎样通过重新构建一个可以实现视图重用的的UIScrollView来避免这样的事情发生!

第一步:创建一个自定义的UIScrollView

1、添加两个protocol来通过代理获取相应的数据,通过一个枚举类型判断边距类型

 技术分享

  2、实现如下代码:

技术分享

  3、实现的时候我们可以通过layoutsubviews(UIScrollView 滑动的时候会调用)方法来实现,通过滑动来判断那些应该会显示出来,那些不应该显示出来,如果应该显示出来,我们就通过addSubview方法添加到UIScrollView上,如果不应该显示出来,而且原先还存在的话,我们就把他从UIScrollView上去掉,放到一个缓存池中

技术分享

技术分享

技术分享

4、在使用的时候,通过一个NSString *来判断所需要的重复使用的视图类型,然后从缓存池中获取

技术分享

技术分享

  5、最后运行程序,效果如下图,无论怎样滑动,内存占用都会比以前小很多

技术分享技术分享

 

作者:杰瑞教育
出处:http://www.cnblogs.com/jerehedu/ 
版权声明:本文版权归杰瑞教育技有限公司和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
技术咨询:技术分享
 

以上是关于IOS开发之代码之九宫格的主要内容,如果未能解决你的问题,请参考以下文章

ios开发之 自适应屏九宫格(第三方库Masonry)

iOS之九宫格设计和数据模型转换

Unity-ugui之扩展Image组件Filled模式支持九宫格

微信小程序之九宫格布局方案

iOS代码实现九宫格

IOS 自定义按钮(代码实现)+九宫格