1. A handheld electronic device, comprising: a memory; a display; an attitude sensor; a processing system including at least one processor, wherein the processing system is configured to perform operations comprising: repeatedly obtaining an indication of a current geographic location and an indication of an orientation provided by an accelerometer and/or gyroscope of the attitude sensor; when the current geographic location corresponds to a first geographic location, transmitting an indication of the first geographic location to a remote server; responsive to the transmitted indication, receiving a plurality of image tiles of a panoramic image corresponding to a predicted geographic location located in proximity to the first geographic location; caching the received plurality of image tiles; when the current geographic location corresponds to the predicted geographic location, rendering, using the cached image tiles, at least a portion of the panoramic image to a sphere in the memory; and displaying the panoramic image on the display using portions of the panoramic image rendered on the sphere, while changing a displayed portion of the panoramic image in accordance with the indication of the orientation provided by the attitude sensor.