0

ビューは「Retina3.5フルスクリーン」に設定されています

下部にはボタンがあり、ビューの下部を追跡するように設定されています(外側の上部、外側の左、外側の下部の支柱セット)。

このコードはviewDidLoadにあります

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    CGRect viewRect = [self.view bounds];
    CGFloat height = viewRect.size.height;
    NSLog(@"Screen is %g pixels high", height);
}

iPhone 3.5 "用に設定されたシミュレーターで実行すると、高さが480ピクセルになり、ボタンはそのままになります。

4インチのシミュレーターで実行すると、ビューが高くなり、ボタンが下と同じ高さになるように移動したと思いますが、そうではありません。しかし、ビューは、シミュレーターの画面全体に表示されるように拡大しています。ビューの高さがまだ480ピクセルしかないことを主張するコード。

何を確認できますか?ボタンを再配置するためのコードを書く必要はありません...

4

2 に答える 2

1

XCode内のユーティリティ内の[サイズインスペクター]タブの[表示]セクションに自動サイズ設定オプションが表示されます。
UIViewがすべての方向に拡張するように構成されていることを確認すると、網膜4画面を使用するときに高さが増加するはずです。

UIViewの拡張

UIViewの拡張

次に、自動サイズ設定オプションを使用すると、UIViewを固定する側(灰色のボックスの外側の赤い線)を設定できます。UIButtonを上部ではなく下部に固定することにより、サイズ変更中にスーパービューの下部からの距離を維持する必要があります。

下部に固定されたUIView

下部に固定されたUIView

于 2013-03-03T08:44:53.103 に答える
-2

ビューフレームは、iPhone5以前のモデルでも同じです。

代わりにUIScreenの境界が変更されます

あなたはiPhone5をチェックすることができます

if([UIScreen mainScreen] bounds].size.height == 480)
{
    // iPhone Classic
}
else
{
    // iPhone 5
}
于 2013-03-03T09:10:03.683 に答える