単一ビューのテスト アプリを作成し、メイン ストーリーボードにUIButtonとUIViewを追加しました。UIViewControllerボタンとビューの両方のサイズを同じサイズに変更しました。

私の VC の -viewDidAppear:animated メソッドで、ボタンとビューのフレームと境界をダンプします。
- (void)viewDidAppear:(BOOL)animated
{
    NSLog(@"button bounds: %@", NSStringFromCGRect(self.theButton.bounds));
    NSLog(@"button frame:  %@", NSStringFromCGRect(self.theButton.frame));
    NSLog(@"view bounds:   %@", NSStringFromCGRect(self.theView.bounds));
    NSLog(@"view frame:    %@", NSStringFromCGRect(self.theView.frame));
}
そして、シミュレーターで実行したときの出力は次のとおりです。
button bounds: {{0, 0},     {100, 100}}
button frame:  {{110, 72},  {100, 100}}
view bounds:   {{0, 0},     {100, 12}}
view frame:    {{110, 179}, {100, 12}}
デバイスで実行する場合:
button bounds: {{0, 0},     {100, 100}}
button frame:  {{110, 72},  {100, 100}}
view bounds:   {{0, 0},     {100, 100}}
view frame:    {{110, 179}, {100, 100}}
シミュレーターで実行しているときにビューが 12 の高さを報告する理由がわかりません。ビューはシミュレーターでは正しく描画されませんが、デバイスで実行すると期待どおりに描画されます。UIViewControllerの一番上UIVIewには「Autoresize Subviews」がチェックされていないことに注意してください(ただし、どちらの方法でも違いはありません)。
(Xcode 4.5.2. iOS 6.0)
ありがとう、CS

