I have a tableView with custom cell.
I also have a .swift-file for this custrom cell.
In this file I have a function which doesn't have a sender:AnyObject in entering parameters.
How can I call tableView.reloadData() from this function?
try to create a delegate. (which I would assume you know about, if not take a look in apple documentation about the delegate and protocols)
So the idea i would suggest is to create a function that will be implemented in your UITableViewController (or a UIViewController conforming to UITableViewDelegate protocol)
Firstly try to add a protocol on top of your CustomCell.swift file.
protocol CustomCellUpdater: class { // the name of the protocol you can put any
    func updateTableView()
} 
then inside your CustomCell.swift:
weak var delegate: CustomCellUpdater?
func yourFunctionWhichDoesNotHaveASender () {
    ...
    delegate?.updateTableView()
}
after that in your UITableViewController (or equivalent) 
func updateTableView() {
    tableView.reloadData() // you do have an outlet of tableView I assume
}
Lastly make your UITableview class conform to the CustomCellUpdater protocol
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
   let cell = tableView.dequeueReusableCell(withIdentifier: "yourIdentifier", for: indexPath) as! YourTableViewCell
   cell.delegate = self
}
In theory it should work. Let me know if I am missing anything
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With