有TableViewController
和ViewController
。如果TableViewController
中的曲目时间大于1,我想在单元格ViewController
中显示图片。
我使用此代码执行此操作:
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: String(format: "Cell%d", indexPath.row), for: indexPath)
var timeString = 0
if indexPath.row >= 0 {
timeString = UserDefaults.standard.integer(forKey: "currentTime\(indexPath.row)")
}
let timeInSeconds = timeString
if timeInSeconds > 1 {
//show image
}
}
此代码允许在单击的单元格中显示图像。移至ViewController
并返回后,用户将在单元格中看到图像。
但有时由于ViewController
中的动作(如果曲目编号发生变化),我需要在几个单元格中显示多个图像。
怎么做?
答案 0 :(得分:0)
请做好,我相信它会为你工作。
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: String(format: "Cell%d", indexPath.row), for: indexPath)
var timeString = 0
if indexPath.row >= 0 {
timeString = UserDefaults.standard.integer(forKey: "currentTime\(indexPath.row)")
}
let timeInSeconds = timeString
if timeInSeconds > 1 {
//show image
}else{
// Set your UIImageView to nil here...
// imageView.image = nil
}
}
答案 1 :(得分:0)
声明一个bool变量。听完track0后,track1,track2将该bool变量设为true,并在cellForRowAt()show images中检查bool是否为真。