表格单元格中的UIImageView不在帧原始帧内?

时间:2016-02-14 12:37:54

标签: xcode swift uitableview uiimageview nslayoutconstraint

所以这就是发生的事情:

enter image description here

我在图片视图中添加了红色背景颜色,这样你就可以看到它有多少了。

我已尝试-2,我已尝试查看tableView(:willDisplayHeaderView:),我已尝试SubviewsAspectFit,& AspectFill但是UIImageView继续超越原来的界限,我不明白为什么。

以下是我ScaletoFill的一些代码:

UITableViewController

这是我的自定义单元类:

    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCellWithIdentifier("scheduleCell", forIndexPath: indexPath) as! ScheduleTableViewCell
    let eventList = schedule?.schedule[dayOfWeek[indexPath.section]]!
    let event = eventList![indexPath.row]
    cell.labelEvent.text = event.act.rawValue
    cell.labelTime.text = "\(event.getTime(event.start)) - \(event.getTime(event.end))"

    return cell
}

    override func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) {
    let tableViewCell = cell as! ScheduleTableViewCell
    let eventList = schedule?.schedule[dayOfWeek[indexPath.section]]!
    let event = eventList![indexPath.row]
    tableViewCell.imageView?.image = UIImage(named: "\(schedule!.potato.mode)-\(event.act.rawValue)")
    tableViewCell.imageView?.backgroundColor = UIColor.redColor()
    tableViewCell.imageView?.contentMode = .ScaleAspectFit

}

enter image description here

1 个答案:

答案 0 :(得分:4)

首先,将imageView的{​​{1}}属性设置为clipsToBounds可以防止图像溢出imageView的边界。

其次,图像明显比imageView大,所以我认为imageView没有溢出,其中的图像溢出。因此,您需要调整图像大小或使用“缩放*填充”模式显示完整图像或根据需要裁剪。

HTH。