[Solved] Xcode unexpectedly found nil while unwrapping an Optional, but no idea why


Solved it.

As the comments pointed out, the problem was that I was not accessing ViewController correctly.

In order to access my ViewController outside of the ViewController class, I was creating a new instance of it by ViewController().

I solved it by putting the function inside the class and changing ViewController() part to self.ViewController.

This answer also helped me as well.
https://stackoverflow.com/a/45932084/7414387

solved Xcode unexpectedly found nil while unwrapping an Optional, but no idea why