一展离愁
那些年iOS并没有像Android那样6的相对布局,一些老猴咬着jj猛然搞一个Frame模型,一个model模型;当网络请求到数据时候就处理一把数据把model里装一个frame模型用来保存那些动态不固定的高度;然后在model对cell赋值的时候调用heightcell那个tableview的代理方法,然后再把计算好的值给cell。好瘠薄麻烦。
简单点,装逼的方式简单点
有位大侠可能也觉得这他妈计算太烦人,能不能让我简单的装逼。
于是就有了那个GitHub上很有名的框架
UITableView+FDTemplateLayoutCell
听说可以适配iOS8以下,也是6的一逼;但是我的app以及目前我司的app不需要关心iOS8以下(我相信都是这样)。
那么还是来把苹果给我们的estimatedRowHeight玩6了吧
你又不是个演员,别设计那么多模式
当拿到UED给的图或者跟产品敲定需求的时候,不少人都会说我曹,干嘛设计那么复杂,能不能有规律的简洁易用?可是理想很美好。那么还是动手操练起来吧。
特斯拉用swift开车成为可能:
首先确定效果图上的每一个cell控件的个数,然后分析一下他们之间的位置关系;接着理清位置关系那么开始拖线or用masonry写布局了。
原理剖析:
其实我们在做的事就是类似Android中的相对布局,我们要知道谁挨着谁
大部分控件不设置宽高内容是会自适应的,same as label imageview,uibutton等。
那么也就是说我们只要告诉cell它里面的contentview的高度,
然后再确定好contentview中控件之间的相对位置就可以了。
说白了也就是要让contentview直到自己要多高,然后告诉cell;
如果不了解masonry,应该都了解了的。不了解的说不过去的,别瘠薄光开车不学习了。
地址:
https://github.com/Easyzhan/A_Auto_Cell_Fucker