31歳から始める初心者のアプリ制作勉強ブログ

アプリ制作の勉強の経過や雑記などを書いていきます

iosバージョンの違いやサイズの違いへの対応

サイズとバージョンを最初に判定

アプリの中身が出来上がってだいたいできた!と思ったんですがその後

「じゃあ他のバージョンで試してみようか」と言われてやってみると

画面が見切れてるわボタンがどっか消えるわで散々でした・・・

ひとつのバージョンだけで動いても全ての人が使ってるわけじゃないですもんね。

 AppDalegateでサイズとバージョンを判定する

自分がやっている方法なので一番いいかどうかはわかりませんが・・・

まずAppDalegate.hで宣言

+(BOOL) isDisplay4Inch;

+(BOOL) isOSVersion7Upper;

BOOL型でYES,NOを返して貰って判定します。

f:id:inou-social:20140116172212p:plain

こんな感じで書いておきます。

そしてAppDalegateの実装ファイルに

+(BOOL) isDisplay4Inch{

return (CGRectGetHeight([[UIScreen mainScreen]bounds] == 568.0f);

}

画面サイズを取得してサイズが4インチかどうかを判定しています。

 

+(BOOL) isOSVersion7Upper {

 return ([[[UIDevice currentDevice]systemVersion]floatValue] >=7.0f);

OSのバージョンを取得して7.0と低いか等しいかを判定しています。

f:id:inou-social:20140116173056p:plain

 

こうやって判定したものを各クラスで必要な時に呼び出して使います。

f:id:inou-social:20140116173210p:plain

 

自分は画像を表示する時にこうやって使っていました。

もっと簡潔に判別する方法はあると思うんですけどね・・・。