gpt4 book ai didi

ios - 对 UIButton 的更改在滚动之前不会更新单元格

转载 作者:搜寻专家 更新时间:2023-11-01 06:46:15 25 4
gpt4 key购买 nike

我使用 UIButtonState (duhz) 解决了这个问题,但我很好奇为什么正是这首先不起作用。

我在 Storyboard中定义了“正常”图标,然后将其配置为在设置对象时显示“突出显示”图标。但是,当表格首次加载时,我没有看到更新后的图标。

但是滚动表格后,突出显示的图标出现了。这里发生了什么?

class TweetCell: UITableViewCell {


@IBOutlet weak var profileImage: UIImageView!
@IBOutlet weak var nameLabel: UILabel!
@IBOutlet weak var tweetLabel: UILabel!
@IBOutlet weak var timeStampLabel: UILabel!
@IBOutlet weak var favButton: UIButton!
@IBOutlet weak var replyButton: UIButton!
@IBOutlet weak var retweetButton: UIButton!

var tweet: Tweet!{
didSet {
profileImage.setImageWithURL(NSURL(string:tweet.user.profile_image_url))
nameLabel.text = tweet.user.name
tweetLabel.text = tweet.text

let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "h:mm"
let str = dateFormatter.stringFromDate(tweet.createdAt)
timeStampLabel.text = str

if (tweet.favorited) {
favButton.imageView?.image = UIImage(named: "star_highlighted.png")
} else {

}

if (tweet.retweeted) {
retweetButton.imageView?.image = UIImage(named: "retweet_highlighted.png")
} else {

}

}
}

//滚动前 enter image description here

//滚动后 enter image description here

最佳答案

发生这种情况是因为表格 View 正在重用具有突出显示 ImageView 的单元格。要解决此问题,您需要在 else 部分设置未突出显示的图像。

if (tweet.favorited) {
favButton.imageView?.image = UIImage(named: "star_highlighted.png")
} else {
favButton.imageView?.image = UIImage(named: "star_unhighlighted.png")
}

关于ios - 对 UIButton 的更改在滚动之前不会更新单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30460923/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com