Google Maps has a relatively undocumented feature that allows for the caching of a map on your iPhone so that you navigate without a 3G or a Wi-Fi connection. All it takes is a bit of forward planning while you have access to the Internet.
In the search box enter the location that you are wanting to retain and adjust the map on your iPhone screen.
The cached map held on the iPhone isn’t very big so it is a good idea is to select a central location of where you want to cache in the middle of your iPhone screen. Alternatively as I have done in my example, I selected my hotel and the re-positioned the map so “Prague 1” was bounded by the river to the top of the screen.
Now move the cursor to the black cross to the right of the search box, click and clear the search text and then move the cursor back into the search box and enter the command “OK map”.
After a moment or so the map on the screen will be cached. You are now ready to use Google Maps offline. Remember to make sure that you have location enabled for Google Maps. If you move outside of the cached map the detail simply goes fuzzy.
The screenshots are from iOS 7.0.4 and Google Maps 2.4.3