0

私は既存のアプリで、画面をカスタマイズして iPhone 5 画面と互換性を持たせる作業を行っています。ただし、次の図でわかるように、イメージ ビューが適切に配置されていません。何が間違っているのかわかりません。どんな助けでも大歓迎です!unlockView は矢印を表します。lockViewOutlet 画像は、矢印画像の外側を表します。

- (void)viewDidLoad {
    [super viewDidLoad];
    float screenSizeHeight=[UIScreen mainScreen].bounds.size.height;

    if(screenSizeHeight==568)
    {
        [lockViewOutlet setFrame:CGRectMake(0, 20, 320, 548)];
        [unlockImageView setFrame:CGRectMake(24, 500, 68, 43)];
        [unlockText setFrame:CGRectMake(105, 500, 182,43)];

    }
    if(screenSizeHeight==480)
    {
        [lockViewOutlet setFrame:CGRectMake(0, 20, 320, 460)];
        [unlockImageView setFrame:CGRectMake(24, 411, 68, 43)];
        [unlockText setFrame:CGRectMake(105, 411, 182,43)];

 }
}

iPhone 5 のスクリーンショットここに画像の説明を入力 iPhone 4 のスクリーンショットここに画像の説明を入力

4

1 に答える 1

2

了解しました。

問題は、画像ビューlockViewOutletにあります。

あなたのコードで:[lockViewOutlet setFrame:CGRectMake(0, 20, 320, 548)];

背景の imageView のサイズを変更しようとしています。imageView のみのサイズを変更しても問題は解決しません。実際の問題はlockViewOutlet.imageのサイズにあります。

最善の方法は、サイズ 320、568 の新しい画像を設計することです。次に、画像ビューのサイズを変更した後、iPhone 5 用の画像を設定します。

if(screenSizeHeight==568)
    {
        [lockViewOutlet setFrame:CGRectMake(0, 20, 320, 548)];

        [lockViewOutlet setImage:[UIImage imageNamed:@"iPhone5LockNackground.png"]];

        [unlockImageView setFrame:CGRectMake(24, 500, 68, 43)];
        [unlockText setFrame:CGRectMake(105, 500, 182,43)];

    }
于 2013-05-08T04:10:17.580 に答える