zoukankan      html  css  js  c++  java
  • ios UITableView高度自适应(转)

     1 - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
     2     // 列寬
     3     CGFloat contentWidth = self.tableView.frame.size.width;
     4     // 用何種字體進行顯示
     5     UIFont *font = [UIFont systemFontOfSize:13];
     6     
     7     // 該行要顯示的內容
     8     NSString *content = [data objectAtIndex:indexPath.row];
     9     // 計算出顯示完內容需要的最小尺寸
    10     CGSize size = [content sizeWithFont:font constrainedToSize:CGSizeMake(contentWidth, 1000) lineBreakMode:UILineBreakModeWordWrap];
    11     
    12     // 這裏返回需要的高度
    13     return size.height; 
    14 }
    15 
    16 // Customize the appearance of table view cells.
    17 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    18     
    19     static NSString *CellIdentifier = @"Cell";
    20     // 列寬
    21     CGFloat contentWidth = self.tableView.frame.size.width;
    22     // 用何種字體進行顯示
    23     UIFont *font = [UIFont systemFontOfSize:13];
    24     
    25     // 該行要顯示的內容
    26     NSString *content = [data objectAtIndex:indexPath.row];
    27     // 計算出顯示完內容需要的最小尺寸
    28     CGSize size = [content sizeWithFont:font constrainedToSize:CGSizeMake(contentWidth, 1000) lineBreakMode:UILineBreakModeWordWrap];
    29     
    30     // 構建顯示行
    31     UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    32     if (cell == nil) {
    33         cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
    34     }
    35     
    36     CGRect rect = [cell.textLabel textRectForBounds:cell.textLabel.frame limitedToNumberOfLines:0];
    37     // 設置顯示榘形大小
    38     rect.size = size;
    39     // 重置列文本區域
    40     cell.textLabel.frame = rect;
    41     
    42     cell.textLabel.text = content;
    43     
    44     // 設置自動換行(重要)
    45     cell.textLabel.numberOfLines = 0;
    46     // 設置顯示字體(一定要和之前計算時使用字體一至)
    47     cell.textLabel.font = font;
    48 
    49     return cell;
    50 }

    转自:http://mrjeye.iteye.com/blog/1045785

  • 相关阅读:
    PHP 数组函数分类整理
    mysql 数据库中 int(3) 和 int(11) 有区别么???
    理解PHP的运行机制
    类与对象
    PHP函数补完:call_user_func()
    linux 软件安装目录详解
    Linux下安装Redis
    Redis简介,应用场景,优势
    idea自动抽取变量快捷键设置
    全局捕获异常(适用于SpringMvc,SpringBoot项目)
  • 原文地址:https://www.cnblogs.com/lihaibo-Leao/p/3332678.html
Copyright © 2011-2022 走看看