UITableView内容视图的宽度与Container不匹配

时间:2016-07-14 19:53:25

标签: swift uitableview containers

我有一个嵌入在Container中的TableVC。在iPhone5上运行的Container的宽度为320.但TableView单元格中ContentView的宽度为600.如何使它们匹配? (+/-填充)。我错过了约束吗?我还在cellForRowAtIndexPath和自定义单元子类中尝试了setNeedsLayout()和layoutSubViews(),但这似乎也不起作用。

在下图中,我希望暗灰色的宽度与浅灰色(+ - 填充)相匹配

任何帮助都非常赞赏.....

 override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

    let cell = tableView.dequeueReusableCellWithIdentifier("EventCell") as! CustomResultsTVCell

    //        cell.setNeedsLayout()
    //        cell.layoutSubviews()
    //        cell.layoutIfNeeded()

    let barViewWidth = Float(cell.barView.frame.width)
    print("barview width is \(barViewWidth)")
// prints 584

    let contentViewWidth = cell.myContentView.frame.width
    print("contentView width is \(contentViewWidth)")
// prints 600

CustomCell类是

import Foundation
import UIKit

class CustomResultsTVCell: UITableViewCell {

@IBOutlet weak var myContentView: UIView!
@IBOutlet weak var barView: UIView!

override func awakeFromNib() {
    super.awakeFromNib()

//        super.layoutSubviews()
//        setNeedsLayout()
//        layoutSubviews()
    layoutIfNeeded()
}

xcode

1 个答案:

答案 0 :(得分:0)

您可以检查前导和尾随约束的属性吗?确保第一项和第二项取消选中相对于保证金

如果有帮助,请参阅随附的屏幕截图。

希望这可以帮助您解决问题。

enter image description here

enter image description here

xcode screenshot