autolayout在cell高度变化中的应用(下)

有了autolayout,我们完全可以用xib去布局cell上的子空间,不用再去写冗余的创建代码及frame模型。

自己仅仅需要做的是:拿到cell最下面固定的子控件(一直存在),在返回高度的方法中,写如下代码即可

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    HomePageCell *cell = [tableView dequeueReusableCellWithIdentifier:kHomePageCell];

HomePageCellModel *model = self.dataList[indexPath.row];
    cell.homePageCellModel = model;
    
    [cell layoutIfNeeded];
    return cell.locationContainer.y + cell.locationContainer.height + 13 + 13;
}

使用注意:如果label是多行的一定要设置preferredMaxLayoutWidth,如果存在多个多行label,都要设置,这样才能得到正确的布局

时间: 2024-08-07 14:43:15

autolayout在cell高度变化中的应用(下)的相关文章

点击单个cell高度变化的动画效果

效果 说明 1. 点击单个cell的时候,其展开与缩放动画实现起来是很麻烦的,做过相关需求的朋友一定知道其中的坑 2. 本例子只是提供了一个解决方案,为了简化操作,将cell高度封装到了Model当中 源码 https://github.com/YouXianMing/TableViewTapAnimation // // Model.h // TableViewTapAnimation // // Created by YouXianMing on 15/9/18. // Copyright

UITableView使用AutoLayout动态计算cell高度

UITableView几乎是每个app都需要用的控件,而cell高度自适应也是我们 需要掌握的,当然cell上面的控件也是有多种表现形式,今天小编讲解的是其中一种比较常见的:Auto Layout with UILabel in UITableViewCell. 话不多说,上教程. 首先我们创建一个Sigle View Application的项目,然后拖上一个UITableView到storyboard中,设置好代理并且设置好约束.约束这里就不做讲解了,可以到AutoLayout详解了 解一下

关于Xib使用AutoLayout动态设置cell高度

最近又要做新功能了,虽然没有什么难点,只是获取后端XML数据显示到TableView,但是不是可以更简单快速的完成呢?原来Cell的动态高度一直都是通过sizeWithFont手动计算,潜意识觉得这应该不是最好的实现方式,但由于当时时间紧不允许尝试新技术,所以问题也就遗留了下来,这次又遇到了,时间充裕就解决下吧. Autolayout是解决自适应frame问题的解决方案(iOS6.0就已经支持了,我现在才用= =#).通过给视图元素设置合适的约束条件,内部会根据元素内容和限制条件计算出合适的尺寸

iOS7中Cell高度 Label高度自适应

? 1 2 3 4 5 6 7 8 9 10 11 12 ?- (float)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{     NSString *str = [_dataArray objectAtIndex:indexPath.row];     UIFont *tfont = [UIFont systemFontOfSize:14.0];     NSDictio

转--动态改变UITableView中的Cell高度

往往在开发iPhone的应用过程中用得最多的应该算是UITableVIew了,凭着IOS给UITableView赋予了这种灵活的框架结构,让它不管在显示列表方面还是在排版方面都有着一定的优势.虽然UITableView功能强大,但是对于一些复杂的应用需求在开发的过程中会出现一些问题,如动态改变UITableView显示的Cell高度就是其中之一 其实想要改变UITableView的Cell高度并不难,UITableView带有一个rowHeight属性,使用他就可以改变高度了.但是这样的改变是把

iOS tableViewCell 在自定义高度方法中遇到的问题,cell高度为0,cell显示不出来,cell直接显示第几个而不是...cell显示个数不对

遇到以上问题可以看看你的cell高度中是否有,自定的高度,有了继续看,没有了继续百度... 在文字排版中,少不了自适应文字高度,行间距什么的:显然cell的高度时不固定的,如果复用自定义的cell的话,又要及时把高度传给cell,进行赋值: 在-(UITableViewCell*)tableview... cellForRow...{在里边进行计算cell高度时可以的,需要将数值赋值给 cell.height=这个属性: 不可以设置全局CGFloat传值,因为赋值还没有进行完,在HeightRo

iOS中Cell高度如何能够自动适应需要显示的内容

本文的代码例子 : "Cell行高自适应.zip" http://vdisk.weibo.com/s/Gb9Mt 下面我们来看看代码.我需要一个第三方库EGO异步下载.addtion文件夹和StringUtil文件以及Comment.Status.User这三个数据模型,这篇文章的主要目的是讲解如何计算Cell的高度,jSON数据分类见上面那篇文章,上面说的在代码例子中都有的.将它们考入你的工程. 实现思路: /* File.strings Cell行高自适应 Created by 杜

IOS 开发中 TableView的文本Cell高度的自适应,UILabel自动换行适应

最后的运行效果: 需求: 1.表格里的UILable要求自动换行 2.创建的tableViewCell的高度会自动适应内容的高度 一.用xcode构建项目,创建一个有tableView的视图,用纯代码的形式实现: 1.创建一个UIViewController类,定义一个UITableView,实现TableView的委托和数据源协议 // //  TableViewController.h //  AdaptiveCell // //  Created by swinglife on 14-1-

cell 高度的计算

UITableViewCell高度计算 rowHeight UITableView是我们再熟悉不过的视图了,它的 delegate 和 data source 回调不知写了多少次,也不免遇到 UITableViewCell 高度计算的事.UITableView 询问 cell 高度有两种方式.一种是针对所有 Cell 具有固定高度的情况,通过: 1 self.tableView.rowHeight = 88; 上面的代码指定了一个所有 cell 都是 88 高度的 UITableView,对于定