iOS 进阶 第七天(0403)

0403

QQ列表展开收起的原理
  • 更改 numbersOfRowsInSection 的返回的数目,为0则收起group,不为零则为展开.先修改模型数据

  • 刷新对应的表格

代码如下:

这个地方会出现一个问题,由于每次点击虽然将nameView的小三角旋转了MPI2,但因为每次都要刷新一次tableView,这样展现到界面上的数据由于每次的刷新都会被重新创建,那么你看到的还是没有旋转的状态.该怎么解决的?

解决方法如下:解决此问题的思路没有任何问题,但需要再注意刷新的问题.既然由于刷新造成新创建一个控件添加到指定为位置替换原有的,那么当这个新控件在添加到父控件指定位置的时候会触发一个方法.如下面两个方法:

接下来就再这么写一下设置一下就行:

下面是在控制器出实现的代理方法来重刷tableView的数据:

虽然现在可以了,但还是会出问题,那就是小三角一旋转就变形了,解决方式是设置按钮内部的imageView的内容模式为居中,不拉伸显示.但还是会出现问题,那就是超出的部分被剪掉,导致显示旋转后的小三角显示不全,原因就是imageView的clippsToBounds默认为Yes,改为NO即可.

如下图所示:


原文地址:https://www.cnblogs.com/lyandy/p/5116865.html