Masonry与UITableView+FDTemplateLayoutCell搭配使用

 

打个小广告:本人开发了一个宠物相关的App,欢迎大家下载体验~ 

下载二维码:

Masonry与UITableView+FDTemplateLayoutCell搭配使用_第1张图片

进入正文:

之前发过一篇博客,也是对这两个的练习使用,但是之后遇到些问题,所以删除重写了。抱歉

Masonry是一款轻量级的布局框架,上手简单。本文只是对此的基本使用,具体可看以下两篇技术博客:

iOS 源代码分析----Masonry:http://draveness.me/ios-yuan-dai-ma-fen-xi-masonry/

Masonry介绍与使用实践(快速上手Autolayout):http://adad184.com/2014/09/28/use-masonry-to-quick-solve-autolayout/

Masonry的github链接:https://github.com/SnapKit/Masonry

UITableView-FDTemplateLayoutCell github:https://github.com/forkingdog/UITableView-FDTemplateLayoutCell

进入正题:(本文素材是来自阳神的demo里面的。阳神用的是storyboard实现,而我是用Masonry实现)

1.首先在子线程解析JSON数据

Masonry与UITableView+FDTemplateLayoutCell搭配使用_第2张图片

 

2.然后返回主线程注册cell,并且刷新tableView

Masonry与UITableView+FDTemplateLayoutCell搭配使用_第3张图片

3.在cellForRowAtIndexPath的方法中抽出一个方法,给cell的模型赋值。

UITableView+FDTemplateLayoutCell 这个类有两种模式,一种是使用自动布局,一种则是计算frame的形式。

Masonry与UITableView+FDTemplateLayoutCell搭配使用_第4张图片

4.接下来我们看下自定义cell里面的实现。

在初始化的方法内部创建子控件并且使用Masonry布局

Masonry与UITableView+FDTemplateLayoutCell搭配使用_第5张图片

5.布局方法实现

Masonry与UITableView+FDTemplateLayoutCell搭配使用_第6张图片

6.当你是使用计算frame模式的时候,需要在cell里面实现sizeThatFits这个方法

Masonry与UITableView+FDTemplateLayoutCell搭配使用_第7张图片

 

7.重新返回控制器中,实现tableview的heightForRowAtIndexPath方法,在其内部重新给cell的模型赋值

 

 

Demo截图:

Masonry与UITableView+FDTemplateLayoutCell搭配使用_第8张图片Masonry与UITableView+FDTemplateLayoutCell搭配使用_第9张图片

 

本文Demo地址:https://github.com/XQBoy/MasonryExercise

以后 会将每学到一个框架的基本使用都会尝试写博客上来,希望大家多多支持,谢谢

PS:小广告~

iOS交流群:248458280

有兴趣的可以进,大伙一起相互学习~

转载于:https://www.cnblogs.com/geshihuayoutiao/p/4671246.html

你可能感兴趣的:(Masonry与UITableView+FDTemplateLayoutCell搭配使用)