Добавление cell из одного tableView в другой

Вопрос заключается в следующем: Есть два tableView. При long press на ячейку первого tableView необходимо добавить эту ячейку во второй tableView (избранное). Cells на втором VC еще не настраивал , и в данный момент они отличаются. Нужно ли делать сell's одинаковыми , либо оно будет ставиться по дефолту? Long press настроил (пока что для проверки - меняет background color). Точной информации по данному вопросу не нашел. Буду благодарен помощи более опытных коллег. Заранее благодарю за ответ.

Первый tableView:

import UIKit

class ListViewController: UIViewController {
    
    @IBOutlet var tableView: UITableView!
    
    private var films = [Films]()
    private var genres = [Genres]()
    
    func getFilms() {
        Networking.shared.getAllMovies(value: "/movie/popular?api_key=a837e864210a43d0d8485e7294324e9e&language=en-US&page=1") { films in
            self.films = films
            self.tableView.reloadData()
        }
    }
    
    func getGenres() {
        Networking.shared.getAllGenres(value: "/genre/movie/list?api_key=a837e864210a43d0d8485e7294324e9e&language=en-US") { genres in
            self.genres = genres
            self.tableView.reloadData()
        }
    }
    
    override func viewDidLoad() {
        super.viewDidLoad()
        let longPressRecognizer = UILongPressGestureRecognizer(target: self, action: #selector(self.longPress(longPressGestureRecognizer:)))
        self.view.addGestureRecognizer(longPressRecognizer)
        getFilms()
        
    }
    
    @objc func longPress(longPressGestureRecognizer: UILongPressGestureRecognizer) {
        
        if longPressGestureRecognizer.state == UIGestureRecognizer.State.began {
            
            let touchPoint = longPressGestureRecognizer.location(in: self.view)
            if self.tableView.indexPathForRow(at: touchPoint) != nil  {
                
                tableView.backgroundColor = .red
            }
        }
    }
    
    
}
extension ListViewController: UITableViewDelegate , UITableViewDataSource {
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        print(films.count)
        return films.count
    }
    
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        
        let cell = tableView.dequeueReusableCell(withIdentifier: "ListCell" , for: indexPath) as! ListCell
        
        let film = films[indexPath.row]
        cell.setMovie(movie: film)
        return cell
    }
    func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
        100
    }
    
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        let vc = storyboard?.instantiateViewController(withIdentifier: "DetailsViewController") as! DetailsViewController
        let model = films[indexPath.section]
        vc.modalPresentationStyle = .formSheet
        vc.model = films[indexPath.section]
        present(vc, animated: true, completion: nil)
        
    }
}

Второй tableView (избранное)

import UIKit

class FavouritesViewController: UIViewController {
    
    @IBOutlet var tableView: UITableView!
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    
}

extension FavouritesViewController: UITableViewDelegate , UITableViewDataSource {
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 1
    }
    
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "FavouritesCell" , for: indexPath) as! FavouritesCell
        
        return cell
    }
    
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        let vc = storyboard?.instantiateViewController(withIdentifier: "FavouriteDetailsViewController") as! FavouriteDetailsViewController
        // let model = movies[indexPath.section]
        vc.modalPresentationStyle = .formSheet
        // vc.model = movies[indexPath.section]
        present(vc, animated: true, completion: nil)
        
    }
}

Ячейка:

import UIKit
import SDWebImage

class ListCell: UITableViewCell {


    @IBOutlet var filmPicture: UIImageView!
    @IBOutlet var filmOverview: UILabel!
    @IBOutlet var filmName: UILabel!
    
    override func awakeFromNib() {
        super.awakeFromNib()
    }

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

    }
    
    func setMovie(movie: Films){
        filmPicture.sd_setImage(with: movie.imageURL)
        filmName.text = movie.filmTitle
        filmOverview.text = movie.overview
    }
}

Ответы (0 шт):