和洋風KAI

【Objective-C】iPhoneとiPadを判別判定し処理分けする方法

するぷろするぷろーらのiPad対応はサプライズにしたかったのでようやくこのネタがかけます(笑)

1つのコードでiPhone版とiPad版をかき分ける場合、今使っているデバイスがiPhoneなのかiPadなのか判定する必要があります。その方法を書いておきます。

iPhoneとiPadを判定し処理を判別する方法

iPhoneとiPadの処理を分ける場合のコードは以下の通りとなります。↓↓

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone){
NSLog(@"iPhoneの処理");
}
else{
NSLog(@"iPadの処理");
}

もちろんiPadから処理分けすることも可能です。↓↓

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad){
NSLog(@"iPadの処理");
}
else{
NSLog(@"iPhoneの処理");
}

なるべくiPhoneとiPadの処理はかき分けたくないものですが、UIが違うとなると画面表示の関係で処理分けせざるをえない部分が出てきます。そんなときはこのコードを使ってみましょう。

TextExpanderかSnippetsに登録しておくと便利かもしれませんね。(やろうやろうとおもって未だに登録してない・・・w)

【via: Stack Overflow