iOS の Portrait と Landscape の高さと幅

iPad 用にプログラムを書いていて、嵌りました。

IOS 端末には、Portrait(縦)と Landscape(横)2つのモードがあります。
高さと幅を取得して位置を移動する様な事を記述して、実機で動作を確認したら、Landscape でオブジェクトが何処かへ飛んでいってしまいました。
色々と試行錯誤した結果、気づいたのが、Landscape にしても高さと幅の指定は Portrait のままだった。

Portrait だと当然、横が幅で縦が高さになります。

Portrait の高さと幅

しかし、Landscape では、Portrait の高さと幅が横に倒れただけ。
つまり、横が高さで縦が幅になります。

Landscape の高さと幅

という事から

Portrait で高さを取得する場合は
hogehoge.size.height

Portrait で幅を取得する場合は
hogehoge.size.width

Landscape で高さを取得する場合は
mogumogu.size.width

Landscape で幅を取得する場合は
mogumogu.size.height

となり、今のところは、これで解決を得ています。

Appshocker

HonyaClub.com

リンクシェア アフィリエイト紹介プログラム