我在Xcode中的第一个手机应用程序(7.3和Swift 2)。花了几周时间尝试在选择行时更改图像。
myImageView是一个带有imageView插座的自定义单元类(swift文件):
import UIKit
class myTableViewCell: UITableViewCell {
@IBOutlet weak var myCellLabel: UILabel!
@IBOutlet weak var myImageView: UIImageView!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
}
}
当选择一行时,我想替换图像,但无法引用cell.myImageView.image {indexPath.row] = UIImage(名称:“SquareGreen.png”)
这没关系
let cell = self.tableView.dequeueReusableCellWithIdentifier("cell") as! myTableViewCell
cell.myImageView.image = UIImage(named: "Square.png")
这不起作用
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
myTableViewCell.myImageView.image[indexPath.row] = "SquareGreen.png"
cell.myImageView.image[indexPath.row] = UIImage(named: "SquareGreen.png")
// error “use of unresolved identifier cell”
}
任何想法?
答案 0 :(得分:0)
这一行错了:
myTableViewCell.myImageView.image[indexPath.row] = "SquareGreen.png"
更改为:
let cell = tableView.cellForRowAtIndexPath(indexPath) as myTableViewCell
cell.myImageView.image = "SquareGreen.png"
第一个问题是Phillip Mills在评论中指出的 - 你没有细胞变量,你需要创建一个。第二个问题是,要将新图像分配给myImageView
属性,您需要指定上面显示的代码(image
不是数组或字典)。