1

私はiPhoneアプリをiPadに適応させることに取り組んできました。さまざまな方法でスケーリングして配置する必要があるアセットが多数あるため、すべてを再配置するという点でいくつかの作業が必要です。

私が気付いたことの 1 つは、iPad mini で次のコードを使用すると、次のようになることです。

CGFloat height = [UIScreen mainScreen].currentMode.size.height;
CGFloat width = [UIScreen mainScreen].currentMode.size.width;

返される高さは 1024 です。これは iPad の長辺です。ただし、iPad 4 を使用して高さを尋ねると、1536 と表示されます。これは、iPad 4 の短辺です。起動中に iPad をひっくり返してみましたが、何も結果が得られないようです。たい (iPad 4 の高さ = 2048)。他の誰かがこの問題を抱えていますか? これは Apple 側のバグのようです....私が何か間違ったことをしていない限り。

4

1 に答える 1

1

これはバグのように聞こえますが、bounds代わりに を使用することで回避できる場合がありますcurrentMode。後者のプロパティは物理画面の測定値であり、ピクセル単位で測定され、明らかに任意の方向を持つことができますが、前者はポイントで測定された論理画面領域です (UI をレイアウトする可能性が高い)。 、既存のすべての iPad でサイズが一貫している必要があります。

于 2012-11-27T22:18:33.997 に答える