`
wangleyiang
  • 浏览: 221623 次
社区版块
存档分类
最新评论

使用系统默认UITableViewCell使用时的heightForRowAtIndexPath:indexPath方法

    博客分类:
  • iOS
阅读更多

iOS项目开发中使用系统默认的UITableViewCell时,Delegate中的方法- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;须慎用。

 

项目中使用系统默认的UITableViewCell:

- (UITableViewCell *)tableView:(UITableView *)tableView
		 cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    
    static NSString *tableViewIdentifier = @"TableViewCellIdentifier";
	
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:tableViewIdentifier];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:tableViewIdentifier];
    }
    
    ...
    
    return cell;
    
}

 

设置Row的高度:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
    return 44 * (isPad ? 2.4 : 1.0);
}

 

OS是7.1.2的iPhone5和iPhone5s中,前者正常显示,后者TableView中不能显示。经过调试,原因是对应的contnetSize.height为0。根本原因就不深入查找了。

 

当注释方法- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;后,该问题解决。

 

分享到:
评论

相关推荐

    iPhone之UITableView入门

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCell(withIdentifier: "cellIdentifier", for: indexPath) cell....

    pure code TableView

    在iOS应用开发中,"纯代码TableView"是一个重要的概念,特别是在使用Xcode 6及更高版本为iOS 8及以上系统构建应用时。本教程将深入探讨如何不依赖任何第三方库或 storyboard,仅通过编写Swift或Objective-C代码来...

    UITableViewCell自适应高度

    // 设置字体,这里使用系统默认的13号字体 let font = UIFont.systemFont(ofSize: 13) // 获取当前行要显示的内容 let content = data[indexPath.row] // 使用该字体和宽度限制计算内容所需的最小尺寸,设置...

    IOS开发UITableViewCell自定义那点事.pdf

    接着,在`heightForRowAtIndexPath`方法中,我们通过创建一个临时的UILabel对象并调用`systemLayoutSizeFittingSize:`方法来计算文本的实际高度,从而动态设置UITableViewCell的高度。 ##### 3. 使用XIB文件自定义 ...

    UITableView优化技巧

    当再次需要显示该位置的单元格时,系统会优先从这个重用池中取出已有的单元格进行重用,只有当重用池为空时才会创建新的单元格。 - **好处**:极大地减少了内存占用,并且提高了界面的响应速度。 #### 二、...

    UITableView高度自适应解决方法

    4. 在`heightForRowAtIndexPath:`方法中,使用`FDTemplateLayoutTableViewCell`的`estimatedHeightForIndexPath:`方法来获取高度。 五、优化性能 尽管FDTemplateLayoutCell提高了性能,但在数据量大的表格中,仍然...

    FDTemplateLayoutCelltest

    接下来,我们创建自定义的UITableViewCell子类,并重写 `- (CGFloat)templateLayoutCell:(FDTemplateLayoutCell *)templateLayoutCell heightForRowAtIndexPath:(NSIndexPath *)indexPath` 方法。在这个方法中,我们...

    ios-cell 中 放置textview 当编辑textview cell 高度随着变化。.zip

    func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { let cell = tableView.dequeueReusableCell(withIdentifier: "MyTableViewCellIdentifier", for: indexPath) as! ...

    IOS应用源码之设置不同风格的table view样式 .rar

    开发者需要在`- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath`方法中使用`dequeueReusableCellWithIdentifier:`来获取可复用的Cell。 4. 自定义背景和...

    UITableView(cell)行高——根据文件内容自动设置

    然而,默认情况下,`UITableView` 的行高是固定的,这可能导致在显示大量文本时内容被裁剪或显示不完整。为了确保所有数据都能正确显示,我们需要根据内容的长度动态设置`UITableViewCell`的行高。本篇文章将详细...

    ios-动态控制TableViewCell高度.zip

    1. 计算Cell的高度:我们需要在 `- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath` 方法中返回每个Cell的高度。首先,获取对应indexPath的模型数据,然后根据...

    动态显示tableview 的高 DynamicHeights.zip 源码

    当estimatedRowHeight被设置,且automaticDimension属性为YES时,UITableView会自动布局cell,而不需要在`heightForRowAtIndexPath:`方法中进行计算。不过,对于性能敏感的应用,仍然建议手动计算高度,以减少不必要...

    UITableView的优化技巧 - iOS知识库1

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { VVeboTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"]; if (cell ==...

    iosUITable自适应Demo

    我们需要使用Auto Layout或Size Classes来定义cell内部元素的约束,并通过实现UITableViewDataSource的`- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath` 方法...

    iOS如何让tableview支持不同种类的cell详解

    在 `- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath` 方法中,我们首先检查Cell 是否为 `nil`,如果是,则根据索引路径创建相应的Cell 类型和Identifier...

    ios-一行搞定cell自适应高度.zip

    在iOS开发中,特别是在使用UITableView时,我们常常需要让单元格(Cell)根据其内容自动调整高度。"ios-一行搞定cell自适应高度.zip"这个压缩包文件提供了一个解决方案,帮助开发者快速实现这个功能,同时还能针对...

    IOS应用源码——表格视图.zip

    - `-tableView:cellForRowAtIndexPath:`:返回指定indexPath的UITableViewCell实例,此方法需要配置每个单元格的内容。 3. **UITableViewCell**: - UITableViewCell是表格视图中每一行的基本单元,可以自定义...

    TableView详细解释

    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { let selectedRow = indexPath.row // 处理选中行的操作,如导航到详情页等 } ``` 除了这些基本的方法,UITableView还有许多...

    IOS中自定义Cell

    在iOS开发中,自定义`UITableViewCell`是一种常见的需求,它能帮助我们实现更丰富的界面展示效果,提升用户体验。本文将详细讲解如何在Objective-C(OC)环境下为iOS应用自定义`UITableViewCell`,并以`...

Global site tag (gtag.js) - Google Analytics