gpt4 book ai didi

ios - 按下行时不会调用 didSelectRowAtIndexPath

转载 作者:行者123 更新时间:2023-11-30 12:13:57 25 4
gpt4 key购买 nike

我在表格 View 中有 5 个自定义单元格,但 didSelectRowAtIndexPath 仅适用于一个单元格。我已在代码中该单元格的索引处添加了该行的单元格。

let cell : FileSentCell = chatTableView.dequeueReusableCell(withIdentifier: "fileSend") as! FileSentCell
let fileUrl = self.getImageURL(forFileName: fileNameString!)
if(fileUrl == nil){
cell.downloadStatusIndicator.image = #imageLiteral(resourceName: "fileDownloadWhite")
}else{
cell.downloadStatusIndicator.image = #imageLiteral(resourceName: "downloadedWhite")
}
cell.downloadStatusIndicator.isHidden = false
cell.downloadingIndicator.alpha = 0.0
cell.sendFileView.layer.cornerRadius = 10
cell.name.text = groupMsg.senderDisplayName
cell.message.text = groupMsg.message
cell.time.text = groupMsg.dateSent!
cell.fileStatus.text = groupMsg.status
cell.fileIcon.image = returnImage(fileName:groupMsg.message!)
cell.sendFileView.tag = indexPath.row
cell.sendFileView.addGestureRecognizer(longPressGesture)
cell.sendFileView.isUserInteractionEnabled = true

return cell

我已经让 UITableview 有一个选择。并且 didSelectRowAtIndexPath 正在为除此一个单元格之外的所有其他重用单元格调用是否有原因或者我应该更改单元格行中的某些内容

我的FileSentCell类是

import UIKit
import QuartzCore

class FileSentCell: UITableViewCell {

@IBOutlet var sendFileView : UIView!
@IBOutlet var message : ChatLabel!
@IBOutlet var time : UILabel!
@IBOutlet var fileStatus : UILabel!
@IBOutlet var fileIcon : UIImageView!
@IBOutlet var downloadStatusIndicator : UIImageView!
@IBOutlet var downloadingIndicator: UIActivityIndicatorView!

override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)

}

required init(coder aDecoder: NSCoder) {
//fatalError("init(coder:) has not been implemented")
super.init(coder: aDecoder)!
}

override func awakeFromNib() {
super.awakeFromNib()
}

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

override func layoutSubviews() {
super.layoutSubviews()
}
}

还有一件事是,如果我减少内容 View 中 UIView 的宽度并单击未显示 UIView 的行 didSelectRow 被调用,那么 didSelectRow 不会被调用仅当单击内容 View 内的 UIView 时才会被调用

提前致谢。

最佳答案

设置:

   cell.contentView.isUserInteractionEnabled = true

关于ios - 按下行时不会调用 didSelectRowAtIndexPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45659067/

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