我正在尝试在表格视图单元格中发布图片,但它一直空白。我为此创建了3个文件。
首先是带有图片信息的数据文件:
import Foundation
class Data {
class Entry {
let filename : String
let heading : String
init(fname : String, heading : String) {
self.heading = heading
self.filename = fname
}
}
let pic = [
Entry(fname: "Picture1.jpg", heading: "Heading 1"),
]
}
然后我有我的表视图控制器
import UIKit
class TableViewController: UITableViewController {
let data = Data()
override func viewDidLoad() {
super.viewDidLoad()
self.tableView.separatorStyle = UITableViewCellSeparatorStyle.None
}
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 1
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return data.pic.count
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as TableViewCell
let entry = data.pic[indexPath.row]
let image = UIImage(named: entry.filename)
cell.pic.image = image
return cell
}
}
第三个是细胞本身
import UIKit
class TableViewCell: UITableViewCell {
@IBOutlet var selfie: UIImageView!
override func awakeFromNib() {
super.awakeFromNib()
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
}
}
我不清楚为什么电池会空白。我将图像文件存储在支持文件中。
任何人都可以帮助我吗?
答案 0 :(得分:0)
您必须将图像分配给UITableViewCell的imageView
更新了尝试:
cell.selfie.image = image
而不是cell.pic.image = image
答案 1 :(得分:0)
更新了我的回答:
确保在调用UITableViewCell
方法之前注册了dequeueReusableCellWithIdentifier:forIndexPath:
子类。只需将以下行添加到viewDidLoad
方法中:
self.tableView.registerClass(TableViewCell.self, forCellReuseIdentifier: "Cell")
答案 2 :(得分:0)
2可能的原因:
首先,您的UITableViewCell
包含名为selfie
的图片视图,但您正在设置pic
。
所以,试试cell.selfie.image = UIImage(名称:entry.filename);
第二个是,您确定要获得图像格式UIImage(named: entry.filename);
吗?
希望这会有所帮助.. :)