与Android不同,iOS自身并不提供Grid控件,所以只能自己通过算法和UITableView来实现九宫格的效果。如果是布局已经定好了,有多少个格子,那样实现起来确实简单很多。这里主要是说一下,根据从后台获取到的数据,做一个动态的Grid布局。
算法思路很重要。不同于写死的九宫格,动态加载就需要一点点小算法去计算。
1.UITableView的行数计算。既然是动态的,那么行数肯定是不一定会相同的。从后台获取的数据,存储在一个array中,暂且叫做dataSource。按照每行放置3个,那么行数应该是[dataSourcecount]/3。可是如果不能被整除,那么就要用到计算余数的函数fmod(x,y)。通过判断是否有余数来确定最终的行数是多少。如果无余数,行数就是[dataSource