Swift中tableView单元格高度自适应的例子

1,效果图

单元格内有两个文本标签,分别显示标题和内容简介。同时两个标签都是自增长的。

2,StoryBoard设置
(1)将单元格 cell 的 identifier 设置成“myCell”

 

(2)从对象库中拖入2个 Label 控件到 cell 中,分别用于显示标题和内容。

(3)并在 Attributes 面板中将两个 Label 的 Tag 值分别设置为 1 和 2,供代码中获取标签。 

(4)最后为了让两个 Label 标签能自动增长,将其 Lines 属性设置为 0。

 

3,约束设置

除了单元格 Cell 需要使用 Auto Layout 约束,单元格内的标签也要设置正确的约束,否则无法实现 Self Sizing Cells。

(1)第一个 Label(用于显示标题)设置上下左右 4 个约束。

(2)第二个 Label(用于显示内容简介)设置左右下 3 个约束。

例子

import UIKit
 
class ViewController: UIViewController , UITableViewDelegate, UITableViewDataSource {
     
    var catalog = [[String]]()
     
    @IBOutlet weak var tableView: UITableView!
     
    override func viewDidLoad() {
        super.viewDidLoad()
         
        //初始化列表数据
        catalog.append(["第一节:Swift 环境搭建",
            "由于Swift开发环境需要在OS X系统中运行,下面就一起来学习一下swift开发环境的搭建方法。"])
        catalog.append(["第二节:Swift 基本语法。这个标题很长很长很长。",
            "本节介绍Swift中一些常用的关键字。以及引入、注释等相关操作。"])
        catalog.append(["第三节: Swift 数据类型",
            "Swift 提供了非常丰富的数据类型,比如:Int、UInt、浮点数、布尔值、字符串、字符等等。"])
        catalog.append(["第四节: Swift 变量",
            "Swift 每个变量都指定了特定的类型,该类型决定了变量占用内存的大小。"])
        catalog.append(["第五节: Swift 可选(Optionals)类型",
            "Swift 的可选(Optional)类型,用于处理值缺失的情况。"])
         
        //创建表视图
        self.tableView.delegate = self
        self.tableView.dataSource = self
         
        //设置estimatedRowHeight属性默认值
        self.tableView.estimatedRowHeight = 44.0;
        //rowHeight属性设置为UITableViewAutomaticDimension
        self.tableView.rowHeight = UITableViewAutomaticDimension;
    }
     
    //在本例中,只有一个分区
    func numberOfSectionsInTableView(tableView: UITableView) -> Int {
        return 1;
    }
     
    //返回表格行数(也就是返回控件数)
    func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return self.catalog.count
    }
     
    //创建各单元显示内容(创建参数indexPath指定的单元)
    func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath)
        -> UITableViewCell
    {
        let cell = tableView.dequeueReusableCellWithIdentifier("myCell",
                                        forIndexPath: indexPath) as UITableViewCell
        //获取对应的条目内容
        let entry = catalog[indexPath.row]
        let titleLabel = cell.viewWithTag(1) as! UILabel
        let subtitleLabel = cell.viewWithTag(2) as! UILabel
        titleLabel.text = entry[0]
        subtitleLabel.text = entry[1]
        return cell
    }
     
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}

时间: 2024-08-01 20:18:08

Swift中tableView单元格高度自适应的例子的相关文章

Excel中合并单元格中快速添加序号的方法

  Excel中合并单元格中快速添加序号的方法          如下图所示,需要在数据的A列加入序号: 如果我们利用传统的拖动填充方式添加序号,系统会弹出这样的提示:"此操作要求合并单元格都具有相同大小" 即不能对数据源格式进行修改,又不能用常规方法添加序号,怎么办呢? 要手工逐个的填写吗? 答案是否定的,如果数据量太大的话,我们不可能一个一个去手工添加吧. 这里给大家介绍一个简单的方法. 首先,选中要添加序号的单元格: 编辑栏输入公式: =MAX($A$1:A1)+1 注意关键的一

Excel中的单元格引用

Excel中的工作表(Worksheet)是由一系列行和列组成的二维表,当我们在使用Excel创建应用程序(例如编写VBA代码),或者创建一个复杂的Excel应用(例如公式.数据透视表.统计图表等)时,需要引用独立的Excel单元格(称之为Cell)或单元格区域(称之为Range),详细了解各种不同单元格或单元格区域的引用和设置方式是非常重要的,这将有助于改善我们的操作习惯或编程方式,从而提高工作效率. 两种单元格引用方式 可能有许多用户并不是特别清楚,在Excel中,有两种单元格引用方式:A1

在Word 2007表格中选中单元格

选中特定单元格是Word2007表格的基本操作,在设置单元格格式等操作时首 先需要选中单元格.在Word2007中选中单元格的方法如下所述: 打开Word2007文档窗口,将鼠标指针移动到准备选中的单元格内部左侧位置 .当鼠标指针呈黑色箭头形状时,单击鼠标左键即可选中当前单元格.如果在鼠 标指针呈黑色箭头形状时拖动鼠标,则可以选中连续多个单元格,如图 2009010808所示. 图2009010808 选中单元格 用户还可以在单击准备选中的单元格后,在"表格工具"功能区 的"

Excel中合并单元格的几种方法及合并单元格快捷键

  Excel中合并单元格的几种方法及合并单元格快捷键          如下图所示,希望将A1到E1,这之间所有单元格合并成一个大单元格操作方法如下: 合并单元格方法一:利用格式菜单上的"合并及居中"按钮合并单元格 ①首先,选中A1.B1.C1.D1.E1这些单元格; ②然后单击"格式"工具栏上面的"合并及居中"按钮; 此时,这几个单元格就已经合并成了一个大单元格了,是不是很简单呀. 合并单元格方法二:利用"设置单元格格式"

怎么修改WPS表格中的单元格网格线颜色

  怎么修改WPS表格中的单元格网格线颜色 1.打开工作簿,单击"WPS表格-选项"按钮,如下图所示. 2.弹出"选项"对话框,在"视图"选项中设置"网格线颜色",选的是"红色",然后单击"确定",如下图. 3.确定后,线条颜色就改成了红色,挺好看的,如下效果图.

Excel中特定单元格或区域的选定方法

不管是否在Excel工作表中定义了命名的单元格或区域 (区域:工作表上的两个或多个单元格.区域中的单元格可以相邻或不相邻.),您都可以使用名称框 ("名称"框:位于编辑栏左端的框,用于指示选定单元格.图表项或图形对象.若要命名单元格或区域,请在"名称"框中键入名称并按 Enter.若要移动到命名单元格并选中该单元格,请在"名称"框中单击其名称.)通过输入它们的名称或单元格引用 (单元格引用:用于表示单元格在工作表上所处位置的坐标集.例如,显示在第

在Excel工作表中选择单元格及其内容

在工作表 (工作表:在 Excel 中用于存储和处理数据的主要文档.也称为电子表格.工作表由排列成行或列的单元格组成.工作表总是存储在工作簿中.)中,您可以选择单元格.区域 (区域:工作表上的两个或多个单元格.区域中的单元格可以相邻或不相邻.).行或列.还可以使单元格处于编辑模式并选择该单元格的所有或部分内容. 您可以在 Microsoft Office Excel 表格中选择单元格和区域,就像在工作表中选择它们一样,但是选择表格的行和列不同于选择工作表的行和列. 注释 如果工作表处于受保护状态

Excel中锁定单元格并设置密码动画教程

<Excel2003入门动画教程41.Excel中锁定单元格并加密>. 演示动画 操作步骤 当多人编辑同一个工作簿文档时,为了防止修改由他人负责填写的数据,我们可以对工作表进行分区域加密. 启动Excel,打开相应的工作簿文档,执行"工具→保护→允许用户编辑区域"命令,打开"允许用户编辑区域"对话框. 单击其中的"新建"按钮,打开"新区域"对话框,在"标题"下面的方框中输入一个标题(如"

Excel2007中的单元格定位快捷键

本文介绍Excel2007中的单元格定位快捷键. 技巧:使用Shift键与下表中的组合键组合使用,可以选择单元格区域,例如,按Ctrl+Shift+Home组合键将选择从单元格A1开始到当前单元格的所有单元格.要选择当前区域,即活动单元格所在的数据区域,按Ctrl+ Shift+*. 单元格定位 快捷键 单元格A1 Ctrl+Home 当前行所在的A列 Home 工作表中最后使用的单元格(即使该单元格当前为空) Ctrl+End 数据区的第一行(所提供的数据中无空单元格) Ctrl+向上箭头键