这篇文章的具体讲的是什么呢,我来详细的举个例子说一下吧。
1、首先,创建一个UITableViewController,同时勾选上图中所示的create XIB。
create XIB File.png
2、然后比如有一个页面,需要tableview实现,这个tableview有8种形式的cell,每个cell都不一样,而且这几个cell的样式在整个APP中只有一个页面会使用,这个时候如果采用自定义cell的方法就会有很多类,而且可复用性低。
3、这个时候你就可以在刚才的UITableViewController.xib中拖8个view(至于view内部的控件,可以根据需求来添加),之后将这8个view设置成属性,在
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath```
方法中将view add到cell.contentView上。当你添加完之后,程序运行起来会发现你xib中自定义view多大 添加上去之后就多大,那这样就不能达到适配的目的了。我想到的是是用代码修改frame。
两个地方可以实现:
第一种:
在添加view的时候,先将view的frame的进行修改赋值,再add到cell.contentview上。
第二种:
在controller的viewWillLayoutSubviews中修改view的frame。
网友评论