title: Issue with passing proper image to tableviewcell
body: <p>This is my struct...</p>
  
  <pre><code>struct ProductImage {
     let id : String
     let url : URL
     let isDefault : Bool
  }
  
  struct Product {
      let name : String
      let id : String
      var images = [ProductImage]()
  
      init(name : String, id: String) {
          self.name = name
          self.id = id
      }
  
      mutating func add(image: ProductImage) {
          images.append(image)
      }
  }
  </code></pre>
  
  <p>Now I have an image loaded on the <code>collectionview</code> and on the click of a button, I want to pass this image to a <code>tableviewcell</code>. The <code>collectionview</code> does have a couple of labels with name and id which is passed successfully...But how the image can be passed that I'm not able to figure out. Below is what happens so far on the click of the sell button...</p>
  
  <pre><code>func SellBtnTapped(_ sender: UIButton) {
  
     let indexPath = collectionView?.indexPath(for: ((sender.superview?.superview) as! RecipeCollectionViewCell))
  
     let myVC = storyboard?.instantiateViewController(withIdentifier: "productSellIdentifier") as! sellTableViewController
     let productObject = productData1[(indexPath?.row)!]
  
     if selectedItems == nil {
         //selectedItems is an array which will hold all struct items.
         selectedItems = [Product(name:productObject.name, id: productObject.id)]
     } else {
         selectedItems?.append(productObject)
     }
  
     myVC.arrProduct = selectedItems
     navigationController?.pushViewController(myVC, animated: true)
  }
  </code></pre>
  
  <p>This is how I'm assigning the images and other data in the tableviewcell. This is the code of cellForRow..(of the tableview from where the cells are loaded..)</p>
  
  <pre><code>func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -&gt; UITableViewCell {
               let cell: sellTableViewCell = tableView.dequeueReusableCell(withIdentifier: "sellProductIdentifier") as! sellTableViewCell
  
      //cell.prdImgView?.image =.... by doing this, the images are displayed in the tableviewcell in the same order as they are displayed in the collectionview cells irresoective of which cell was clicked. i.e clicking on btn on 1st collection view item shows the image on that collection view item on the tableviewcell.And when I click on the btn on the 4th collectionview item the image shown on the tableview cell will be that of the 2nd collectionview item...     
               cell.prdImgView?.image = self.appDelegate.commonArrayForURLImages[indexPath.row]                              
  
               let product = arrProduct?[indexPath.row]
               cell.produvtNameLabel.text = product?.name
               cell.rateTextField.text = product?.theRate
  
               return cell
          }
  </code></pre>
  
  <p>This is how the array(which is passed to the tableview cell) gets the images...</p>
  
  <pre><code>var theProduct = Product(name: name, id: id, theRate: rate, quantity: qty, sku: skuCode, prdCateg: prodCat, prodDescr: description)
  if let images1 = anItem["product_images"] as? [[String:String]] {
      for image in images1 {
          guard let imageId = image["id"],
              let url1 = image["image"],
              let isDefault = image["is_default"] else { continue }
          let productImage = ProductImage(id: imageId, url: URL(string: url1)!, isDefault: isDefault == "1")
          theProduct.add(image: productImage)
          self.productData1.append(theProduct)
          self.imgData.append(productImage)
          let url = URL(string: url1)
          if let data = try? Data(contentsOf: url!) {
              let img = UIImage(data: data)
              print(img!)
              self.arrayOfURLImages.append(img!)
          }
  
          self.appDelegate.commonArrayForURLImages = self.arrayOfURLImages
      }
  }
  </code></pre>