У меня возникла проблема с UITableVIew
. Допустим, у меня есть экран с tableView, в котором три изображения в ячейке resuablecell также содержат некоторый текст. Я хочу открыть это изображение как всплывающее окно для просмотра.больше, добавлено UITapGesture
, и для открытия, что я передаю ссылку на изображение, как это,
@objc func showImage (_ sender: UITapGestureRecognizer){
print("ImageTapped")
let imagePopupVC: ImagePopupViewController = self.storyboard?.instantiateViewController(withIdentifier: "imagePopupVC") as! ImagePopupViewController
imagePopupVC.isImage = true
if popUpFeedImage != nil {
// here this feedImage is the one i am passing to other VC
imagePopupVC.image = popUpFeedImage
}
self.navigationController?.pushViewController(imagePopupVC, animated: false)
}
, и вот я получаю это popUpFeedImage
заполнено, в cellForRowAt
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell: MemberTableViewCell = tableView.dequeueReusableCell(withIdentifier: "MemberTableViewCell", for: indexPath) as! MemberTableViewCell
let urlString: URL = URL(string: postContent.contentURL)!
let tap = UITapGestureRecognizer(target: self, action: #selector(showImage(_:)))
cell.feedImageView.isUserInteractionEnabled = true
cell.feedImageView.addGestureRecognizer(tap)
cell.feedImageView.sd_setImage(with: urlString, placeholderImage: nil) { (image, error, imageCacheType, url) in
self.popUpFeedImage = image
}
}
Теперь, когда проблема возникла, так как это изображение заполнено, и я нажимаю на 1-е изображение, оно открывает изображение, которое является последним изображением в ячейке, которое является 3-м, и происходит для всех изображений, которые были отображены в последнем изПоявится экран, теперь я понятия не имею, удерживать ли это ссылку для изображения, которое я нажал на конкретном Index
, я реализовал didSelectItemAt
для открытия другого viewController
, поэтому я не могу использовать его для этой конкретной цели.Любая помощь будет полезна, спасибо.