Typically to handle a change in screen size, Autoresize rules are very important (Autolayout is more flexible in iOS 6).
These rules define how the position and size of your elements change depending on the superview's size change. They're generic rules, that affect top/left/bottom/right margins, and width/height, but work for most people in most situations.
You need to decide what you want your view to look like with a shortened height, and take that in to account when implementing your view. If Autoresize can deal with this for you, that's great! You can apply them either in IB (under the ruler tab when a view is selected), or via code:
view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
If you're targetting iOS 6 and above, you can also use AutoLayout and its constraints system.
If this isn't suitable, then you can perform your own transformations on demand, when the status bar changes height. This can be done by either:
Implementing these delegate methods in your App Delegate:
application:willChangeStatusBarFrame:
application:didChangeStatusBarFrame:
Observing these notifications
UIApplicationWillChangeStatusBarFrameNotification
UIApplicationDidChangeStatusBarFrameNotification