模拟网易新闻、今日头条的textView高度自适应输入框、frame和masonry两种方式实现。

demo效果

因项目需要参考网上的资料 完成高度自适应的输入框,废话就不多说了,效果图如下:


模拟网易新闻、今日头条的textView高度自适应输入框、frame和masonry两种方式实现。_第1张图片
test1.gif

demo思路

我刚开始是想使用masonry来做的,因为考虑约束可以避免很多数值计算
但是在使用的时候遇到了一些问题,就临时放弃了。
改使用frame来做计算,在差不多效果都完成的时候,使用transform,解决了每次框的高度增加的时候,是向下增加的问题,每次高度更新的时候,使用transform移动一下输入框的位置,完美解决问题。
完成之后,花了很长时间研究了masonry 出的问题,终于还是解决了,这里就不废话遇到的坑了,我把frame 和masonry两种方式是代码都写在了demo里了


模拟网易新闻、今日头条的textView高度自适应输入框、frame和masonry两种方式实现。_第2张图片
屏幕快照 2016-10-03 下午8.55.18.png

通过isFrame来控制的。

demo地址:https://github.com/iosyaowei/YWInputView

你可能感兴趣的:(模拟网易新闻、今日头条的textView高度自适应输入框、frame和masonry两种方式实现。)