UIImageView 未在自定义 UITableViewCell 中显示图像

Posted

技术标签:

【中文标题】UIImageView 未在自定义 UITableViewCell 中显示图像【英文标题】:UIImageView not showing image in custom UITableViewCell 【发布时间】:2014-11-21 11:21:55 【问题描述】:

UIImageView 没有在我的自定义UITableViewCell 中显示图像。

不知道为什么,我尝试了在Interface Builder 中设置Image 属性的两种方法,然后尝试设置IBOutlet 和设置.image 属性。

似乎没有一个工作。为什么会发生在我身上?!?!

带有 TableViewDataSource 的类

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

    var cell = tableView.dequeueReusableCellWithIdentifier("LatestMessageCell") as LatestMessageCell

    cell.avatarImageView.image = UIImage(named: "Logo")

    return cell

自定义单元类

class LatestMessageCell: UITableViewCell 

@IBOutlet weak var cardBackgroundView: UIView!

@IBOutlet weak var avatarImageView: UIImageView!

@IBOutlet weak var usernameLabel: UILabel!

@IBOutlet weak var messageLabel: UILabel!

override func awakeFromNib() 
    super.awakeFromNib()
    // Initialization code

    cardBackgroundView.layer.cornerRadius = 4
    cardBackgroundView.layer.shadowColor = UIColor.blackColor().CGColor
    cardBackgroundView.layer.shadowOffset = CGSize(width: 0, height: 2)
    cardBackgroundView.layer.shadowOpacity = 0.3
    cardBackgroundView.layer.shadowRadius = 5


override func setSelected(selected: Bool, animated: Bool) 
    super.setSelected(selected, animated: animated)

    // Configure the view for the selected state

【问题讨论】:

我会说: • 检查插座是否设置正确 • 检查图像是否已加载(可能是错误的图像名称?) 【参考方案1】:

请修改您的方法并检查:

let simpleTableIdentifier = "TableViewCell";

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


      var cell:LatestMessageCell? = tableView.dequeueReusableCellWithIdentifier(simpleTableIdentifier) as? LatestMessageCell

      if (cell == nil)
      
           let nib:Array = NSBundle.mainBundle().loadNibNamed("LatestMessageCell", owner: self, options: nil)
           cell = nib[0] as? LatestMessageCell
      

      cell!.avatarImageView.image = UIImage(named: "Logo")

      return cell!

【讨论】:

以上是关于UIImageView 未在自定义 UITableViewCell 中显示图像的主要内容,如果未能解决你的问题,请参考以下文章

CAShapeLayers 未在自定义子类 (UIControl) 中绘制

动画未在自定义布局中显示

UIImageView 没有出现在自定义 UITableViewCell 中

在自定义 View 类中使用 UIImageView 的正确方法

onItemClickListener 未在自定义 ArrayAdapter 上触发

选择时在自定义 UITableViewCell 中调暗 UIImageView