Ios 以编程方式向表视图中的单元格添加视图

Ios 以编程方式向表视图中的单元格添加视图,ios,swift,uitableview,Ios,Swift,Uitableview,我有一个带有动态原型的表视图,它当前以编程方式显示4个元素。我通过数组指定单元格名称(请参见下面的代码),但我还想在每个单元格的右半部分添加一个小视图,以便在每个标签旁边显示一个小图形。我可以在故事板中插入一个视图,但它不会动态扩展自身。基本上,我需要找到一种方法来修改这段代码,在每个单元格中添加一个视图,并为这些视图分配一个我已经创建的类 override func tableView(tableView: UITableView, cellForRowAtIndexPath inde

我有一个带有动态原型的表视图,它当前以编程方式显示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
}
这就是我想要的视图:


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

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

var newView = UIView(frame: CGRectMake(200, 10, 100, 50))
cell.contentView.addSubview(newView)
要在tableView和状态栏之间添加“空格”,可以将tableView控制器嵌入UINavigationContoller中


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

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

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

您需要使用图形视图和标签创建自定义UITableViewCell类。成吨的在线教程:)为绘图投票:)根据设备的大小或方向(横向或纵向),您的代码不会每次都有效。这就是为什么使用AutoLayout的解决方案会更完整。此外,如果标签有背景,它还可以防止标签刚好隐藏在补充视图的后面,从而允许使用省略号进行剪切。这样,每次加载单元格时,都会在较旧的视图上添加视图
var newView = UIView(frame: CGRect(x: 210, y: 10, width: 110, height: 50))
cell.contentView.addSubview(newView)