アプリを4インチ対応にする方法は?iOS6GMシミュレーターの私のアプリは4インチサイズではありません。xcodeに4インチすべてを使用するオプションはありますか?
2 に答える
一部のユーザーは、スタートアップイメージを追加した後に修正されたと報告していますDefault-568h@2x.png
(以下を参照)。iPhone5にアップデートするために、私は次のことを行いました。
自動回転はiOS6で変更されています。iOS6ではshouldAutorotateToInterfaceOrientation:
、UIViewControllerのメソッドは非推奨になりました。代わりに、supportedInterfaceOrientationsForWindow:
andshouldAutorotate
メソッドを使用する必要があります。したがって、私はこれらの新しいメソッドを追加しました(そしてiOS 5互換性のために古いものを維持しました):
-(BOOL)shouldAutorotate {
return YES;
}
- (NSUInteger)supportedInterfaceOrientations{
return UIInterfaceOrientationMaskAllButUpsideDown;
}
- 次に、それを必要とするビューの自動レイアウトを修正しました。
- スタートアップビュー用のシミュレーターからの画像とiTunesストアのビューをPhotoShopにコピーし、pngファイルとしてエクスポートしました。
- デフォルトの画像の名前は次のとおりです。Default-568h@2x.pngサイズは640x1136、画面サイズは320x568です。
- iOS 4の下位互換性を落としました。その理由は、この新しいXcodeがarmv6コードをサポートしなくなったためです。したがって、現在サポートできるすべてのデバイス(armv7を実行)をiOS5にアップグレードできます。
回転が変化したため、iOS5とiOS6で自動回転をテストすることを忘れないでください。
iPhone 5がリリースされる前は、
#define kViewHeight 460.f // or 480.f if you don't have a status bar
#define kViewWidth 320.f
でも今は使いたい
#define kViewHeight CGRectGetHeight([UIScreen mainScreen].applicationFrame)
#define kViewWidth CGRectGetWidth([UIScreen mainScreen].applicationFrame)
代わりは。
しかし、それが良い解決策であるかどうかはわかりません。CGRectGetHeight([UIScreen mainScreen].applicationFrame)
ご覧のとおり、を使用するすべての場所にディスパッチしますkViewHeight
。使ってみました
extern float kViewHeight; // in .h
float kViewHeight = CGRectGetHeight([UIScreen mainScreen].applicationFrame) // in .m
しかし、コンパイルエラーで失敗しました。
それはうまく機能しますが、もっと良い回避策があるはずだと思います。;)