What the proper handling of "no network" condition is, entirely depends on your application.
Two things to keep in mind: programmatically closing an app or not handling smoothly the "no connection available" case are both reasons for rejection in the Apple review process.
Having had experience with designing an app that also heavily depended on network being available, I would say that best practice can be summarized in the following:
1) use the Reachability framework to detect what kind of connectivity you have; the version I link to is to be preferred to the one provided by Apple, which is buggy (search S.O for more on this);
2) each time you need data from the network, check whether connection is back (i.e., not just once at the beginning);
3) always inform the user that no network is available, when this occurs, either by displaying an alert, or better showing some other kind of icon/messaging; the least intrusive kind of display is best, so to not disrupt the user's workflow;
4) if you have cached data and this makes sense, use cached data when no network connection is available (this will make the app "partially usable" in such cases as well);
5) offer the user a button to refresh the data, if this make sense for your app;
This said, the simplest implementation of this "best practice" is an app that in case no connection is available, gets the user back to the "main screen" (ugly, but it could be the only sensible thing in your app). Full implementation is, say, an rss reader caching all the news and allowing you to read them even when no connection is there (without loading newer data, obviously).