以编程方式将视图添加到表视图中的单元格

时间:2015-06-19 16:43:11

标签: ios swift uitableview

我有一个包含动态原型的表视图,当前以编程方式显示4个元素。我通过数组分配单元名称(参见下面的代码),但我还想在每个单元格的右半部分添加一个小视图,以便在每个标签旁边显示一个小图形。我可以在故事板中查看视图,但它不会动态扩展。基本上我需要找到一种方法来修改这段代码,在每个单元格中添加一个视图,并将我已创建的类分配给这些视图。

    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCellWithIdentifier("LineCell", forIndexPath: indexPath) as! UITableViewCell
    cell.textLabel?.text = oneLine.lineNames[indexPath.row]
    return cell
}

这是我想要的观点:

enter image description here

另外,如何在载波,时间和电池与表格视图之间留出更多空间?

4 个答案:

答案 0 :(得分:8)

您可以根据需要创建视图,并将其添加为单元格contentView的子视图:

var newView = UIView(frame: CGRectMake(200, 10, 100, 50))
cell.contentView.addSubview(newView)

答案 1 :(得分:3)

要在tableView和状态栏之间添加“Space”,您可以将tableviewcontroller嵌入到uinavigationconttoller中。

要动态添加视图,您可以在单元格上使用addSubview方法,并使用自动布局在代码中添加约束

答案 2 :(得分:1)

Swift 4.0

var newView = UIView(frame: CGRect(x: 210, y: 10, width: 110, height: 50))
cell.contentView.addSubview(newView)

答案 3 :(得分:0)

var newView = UIView(frame: CGRect(x: 210, y: 10, width: 110, height: 50))
cell.contentView.addSubview(newView)

正如ashish所说,据我所知,这会将子视图添加到单元格的顶部。如果我要将其添加到单元格的底部,该怎么办。