`
mrjeye
  • 浏览: 173827 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

UITableView高度自適應

 
阅读更多

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
	// 列寬
	CGFloat contentWidth = self.tableView.frame.size.width;
	// 用何種字體進行顯示
	UIFont *font = [UIFont systemFontOfSize:13];
	
	// 該行要顯示的內容
	NSString *content = [data objectAtIndex:indexPath.row];
	// 計算出顯示完內容需要的最小尺寸
	CGSize size = [content sizeWithFont:font constrainedToSize:CGSizeMake(contentWidth, 1000) lineBreakMode:UILineBreakModeWordWrap];
	
	// 這裏返回需要的高度
	return size.height; 
}

// Customize the appearance of table view cells.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    
    static NSString *CellIdentifier = @"Cell";
    // 列寬
	CGFloat contentWidth = self.tableView.frame.size.width;
	// 用何種字體進行顯示
	UIFont *font = [UIFont systemFontOfSize:13];
	
	// 該行要顯示的內容
	NSString *content = [data objectAtIndex:indexPath.row];
	// 計算出顯示完內容需要的最小尺寸
	CGSize size = [content sizeWithFont:font constrainedToSize:CGSizeMake(contentWidth, 1000) lineBreakMode:UILineBreakModeWordWrap];
	
	// 構建顯示行
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
	if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
    }
	
	CGRect rect = [cell.textLabel textRectForBounds:cell.textLabel.frame limitedToNumberOfLines:0];
	// 設置顯示榘形大小
	rect.size = size;
	// 重置列文本區域
	cell.textLabel.frame = rect;
    
	cell.textLabel.text = content;
	
	// 設置自動換行(重要)
	cell.textLabel.numberOfLines = 0;
	// 設置顯示字體(一定要和之前計算時使用字體一至)
	cell.textLabel.font = font;

    return cell;
}


UILabel宽高自适应可以:
sizeToFit
2
2
分享到:
评论

相关推荐

    UITableView高度自适应解决方法

    UITableView高度自适应解决方法 iOS 源码 下载

    UITableviewCell高度自适应

    UITableviewCell高度自适应

    UITableVIew 自适应高度实例

    一个自适高度的uitableview实例,行的高度可以根据内容的多少而自适应,比用继承uitableview的方式来得简单多了,需要的朋友可以下载学习下。

    UITableview的cell自适应高度

    利用纯代码实现,两种最容易实现自适应高度的方法。一看就能学会。

    UITableViewCell自适应高度

    UITableViewCell 自动调节高度

    UITableViewCell 自适应(文本,图片)内容高度

    在开发中,uitableView 会经常用到,作为实现tableView展示数据的cell 也就显示出了非同一般的作用,经常,我们从网络上解析到数据之后,每条数据有多有少,这就要求cell有不同的高度,自适应高度的要求由此产生,...

    利用AutoLayout实现cell高度自适应

    作者rasping,源码AutoLayoutCellDemo,在开发中使用UITableView时经常会遇到,UITableViewCell的高度随cell的内容变化而变化。这就导致我们在添加cell之前需要写一大堆的代码去计算cell内容的高度,然后再确定cell...

    iOS利用AutoLayout自适应Cell高度,优化UITableViewCell高度计算

    最近在研究UITableViewCell高度的自适应,在网上找到了一个国内人员开发的工具类,自己下载下来研究了一下,感觉非常不错,用起来也非常方便,这是高手的博客地址...这是工具类的git地址...

    网络图片尺寸、高度自适应/适配

    作者CoderZhuXH,源码XHWebImageAutoSize,1.iOS开发中,常碰到网络图片需要做尺寸适配(使显示出来的图片不变形) 2.最好的解决方案是:后台把图片的分辨率拼接在图片的URL...2.UITableView,UICollectionView UI动态更新.

    简单自动布局

    // cell布局设置好之后调用此方法就可以实现高度自适应(注意:如果用高度自适应则不要再以cell的底边为参照去布局其子view) [cell setupAutoHeightWithBottomView:_view4 bottomMargin:10]; 2. >> 设置 tableview...

    ios-UITableViw实现图文编辑.zip

    用UITableView实现的图文混合编辑 1、可多选相册图片插入; 2、可进行图片删除; 3、文本输入高度自适应 https://github.com/HawkEleven/EditContent

    iOS ScrollView嵌套tableView联动滚动的思路与最佳实践

    对应这种页面结构应该毫无疑问是最底层是一个纵向滚动的scrollView,它的页面上面放一个固定高度的header,紧接着下面一个支持横向滚动切换的容器scrollView,容器上面才是各个页面具体的tableView,如下图: ...

    一个基于融云IMLib的IM框架

    UITableView+FDTemplateLayoutCell cell自适应高度框架 SDWebImage 只是用了UIImageView + WebCache 使用说明 克隆项目后,需要使用Cocoapods updte/install 部分图片素材来源于融云IMKit,如需将TLMessage用于...

    ios开发记录

    状态栏20键盘高度216导航44 最少2位 补0 // UIColor *color2 = [[UIColor alloc] initWithRed:0 green:1 blue:0 alpha:1]; // button setTitle:@"点我吧" forState:UIControlStateNormal]; // [button addTarget:...

Global site tag (gtag.js) - Google Analytics