1

我正在尝试在 KDCircularProgress中设置一个图像,该图像位于 UITableViewCell 内。

在此处输入图像描述

当我从 StoryBoard 添加图像时,它成功显示,但是当我尝试以编程方式添加它时,图像不会出现。

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    var cellToReturn: DashBoardCell! = tableView .dequeueReusableCellWithIdentifier("DashBoardCell") as? DashBoardCell
    if (cellToReturn == nil) {
        cellToReturn = DashBoardCell(style: UITableViewCellStyle.Default, reuseIdentifier:"DashBoardCell")
    }
    let image: UIImage = UIImage(named: "ImageName")!
    dImage = UIImageView(image: image)
    dImage!.frame = CGRectMake(0,0,30,25)
    dImage?.contentMode = UIViewContentMode.ScaleToFill
    cellToReturn.dynamicImageView = dImage

dynamicImageView 是 UITableViewCell 类中的 UIImageView 插座,我试图在实现 TableView 委托方法的 View Controller 类中的表视图单元格中设置动态图像。

我究竟做错了什么?

4

1 回答 1

1

我不确定是什么DashBoardCell样子,所以这可能是错误的,但似乎dImage从未添加到视图层次结构中。如果DashBoardCell已经dynamicImageView在您的故事板中创建,我不明白为什么它不会,那么您不必担心创建UIImageView,您可以简单地将图像设置为

cellToReturn.dynamicImageView.image = UIImage(named: "ImageName")

如果还没有,那么您需要添加类似的内容

cellToReturn.contentView.addSubview(dImage)

或者,如果DashBoardCell'sdynamicImageViewdidSet观察者,您可以在其中插入新视图。您还需要确保覆盖prepareForReuseDashBoardCell删除dynamicImageView,因为您将在cellForRowAtIndexPath.

于 2016-04-25T16:54:52.800 回答