iOSアプリでpixel表示を使わない?
さて、皆さんはiPhoneとiPadに対応、iOS6とiOS7に対応を仕様として求められたときにどうやって作るのが最も簡単だと思いますか?
Storyboardを使う方法, 空プロジェクトからnib/xibを使う方法, ただひたすらにコードを書く方法など人によって様々かと思います。筆者は最近、ただひたすらにコードを書く方法を取っています。理由は結局, iPhone/iPadの対応やiOS6/iOS7の対応のためにそこだけコードを書いて対応したりすることが生じるためです。それならばいっそのこと、0からコードを書いた方が勉強にもなるし、気持ちが良いのです。
しかし、周りからのは『コードで書くとデバッグしないとイメージが湧かないんだよなぁ』とか、『pixel指定で作るとか面倒くさくね〜?』なんて言われたりするんですよね(汗)
この両方に通ずることは相対表示で画面の構造が作れれば良いのになんてことなんじゃないかと勝手に思いました。
なので、本日は開発者がpixel指定を意図せずiOSアプリの画面を作成できるような関数を定義してみたいと思います。
関数の定義
さて、早速定義します。
横幅や縦幅を指定したパーセンテージの長さに変換したい場合は
1 2 3 4 5 6 7 8 9 10 |
|
で良いでしょう。
横幅, 縦幅にとらわれたくなければ
1 2 3 4 5 6 7 |
|
とすれば良いでしょう。
横幅, 縦幅を同時に変換したければ
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
とできると思います。
これでHTML, CSSでいうところのposition: relativeでwidth: 30%; height: 20%;のような形を取ることができます。
動作確認してないけど、たぶん行けるでしょう…。