Think of it like this. A viewcontroller is the name given the physical file that has the text or code for your class that reacts/controls events, like a user pushing a button, of a view.
Each view should be considered as a self-contained window to the world as it is now. For instance, a view to add a person will allow you to add your person details. Those details are saved to the database and when you leave that view it is no longer necessary as it has served its purpose.
Views and their controllers do not interact with each other. They interact with underlying data. Look at the Model View Controller (MVC) pattern. It will give you some background.