私は iOS 開発の初心者で、ユニバーサル アプリについて混乱しています。
iPhone 4(retina) とそれ以前の iPhone では同じコード、同じ xib ファイルを使用できますが、なぜ iPhone と iPad で 2 つの異なる xib を作成する必要があるのでしょうか。違いは何ですか?
iPhone と Retina iPhone の場合、座標にはピクセルではなく「ポイント」を使用します。iPhone と iPad で同様の方法を使用できないのはなぜですか?
私は iOS 開発の初心者で、ユニバーサル アプリについて混乱しています。
iPhone 4(retina) とそれ以前の iPhone では同じコード、同じ xib ファイルを使用できますが、なぜ iPhone と iPad で 2 つの異なる xib を作成する必要があるのでしょうか。違いは何ですか?
iPhone と Retina iPhone の場合、座標にはピクセルではなく「ポイント」を使用します。iPhone と iPad で同様の方法を使用できないのはなぜですか?
一部の単純なアプリでは、iPhone の UI をデザインして、同じ xib ファイルを iPad 用に再利用することができます。XCode でターゲットを選択し、Main InterfaceテキストをiPhone/iPod Deployment InfoからiPad Deployment Infoにコピーするだけです。Main Storyboardを使用している場合は、それもコピーします。ただし、iPad は 320*480 / 640*960 の iPhone 画面から 768*1024 / 1536*2048 の iPad 画面に単純にすべてを拡大するわけではありません。@elgarvaは、これはひどく見えると正しく言っています。代わりに、iPad バージョンでは自動サイズ変更マスクを使用して、各ビューのサイズまたは位置を変更します。
すべてのビューが左中右または上中下であると見なすことができる場合、これは機能する可能性があります。もっと複雑なものがある場合は、別の iPad インターフェイスを設計する必要があります。
iPhone の UI を複製することは、美的な理由からだけではありません。iPhone には、iPad が 1 つの画面に収まるタスクに対して、深くてわかりにくいナビゲーション ツリーが含まれることがよくあります。
主な理由は、UIの要素を拡大縮小して大きな画面に合わせると、見栄えが悪くなるためです。機能させるために何もする必要はなく、自動的に実行されます。アプリがiPhoneのみで、iPadにインストールされている場合(ユーザーが選択した場合)。
別のXIBを使用すると、アプリを再配置して、より大きな画面を利用できるように考えることができます。おそらく、iPhoneの3つの異なる画面よりも1つのiPadビューでより多くの情報を表示できます...したがって、iPhoneアプリは基本情報を表示し、ユーザーがタップすると展開できますが、iPadバージョンはすべての情報を表示できますロードに加えて、見栄えはするが不要で、iPhone画面では意味をなさない追加のグラフィックス。
PS:新しいアプリを開始する場合、アプリの表示回数が少ない場合はストーリーボードを使用することを強くお勧めします...開始は非常に簡単で、アプリのフローを一目で確認できます。
xib
ファイルを複製して名前を変更するとfilename~ipad.xib
、私にとってはうまく機能していますios6.1
ラティーナ ディスプレイは、元の iPhone の解像度をちょうど 2 倍にします。Retina ディスプレイ用に別のグラフィックスを提供しない場合、システムはリソースの解像度を 2 倍にするだけです。
ポイントは画面の物理的なサイズに関連しており、これは新旧の iPhone で類似しています。
iPadの場合、画面サイズが変わります。これは、ポイント単位の次元が iPhone の次元とは異なることを意味します。