2012-02-29 6 views
0

iPhoneアプリを終了したばかりですが、iPad版の作成に同じアプリを使用したいと考えています。私が本当にやりたいことは、アプリが実行されているデバイスを検出し、それに応じて実行時にUIを選択することです。私は現在のデバイスがどれであるかに関するいくつかのコードを取得します。基本的な主なアイデアの背後にあるのは、私は別のipadのバージョンのためにサーバーとクライアントの通信部分をもう一度書きたくないということです。私はこのために普遍的なアプリを作りたくありません。デバイスを検出し、それに応じてUIを読み込みます

My Prob:上記のようにアプリケーションを動作させるには、どのような設定を行う必要がありますか。現在、iPhone Simulatorを使用しているとき、私の現在のデバイスはiPhoneだと言われています。しかし、私は私のデバイスをiPad Simulatorに変更し、再びそれを実行するよりも、int iphoneシミュレータを変換します。

ありがとうございました。

+0

あなたのiPhoneを移植しますか? eアプリをiPadにチェックするにはhttp://www.raywenderlich.com/1111/how-to-port-an-iphone-application-to-the-ipad。これがあなたが望んでいないものであれば、あなたの問題は何にどこまで問題になっているのか不明確です。 –

+0

これを見てくださいhttp://stackoverflow.com/questions/5415936/how-to-know-is -it-iphone-or-ipad –

答えて

1

あなたはこの行を確認することができます。

NSString *model = [[NSString alloc]initWithString:[[UIDevice currentDevice] model]]; 

モデル値は

いずれかiPhoneまたはiPadのだろうか、[[UIDevice currentDevice] userInterfaceIdiom]で行くと

と値を比較することができます
typedef enum { 
    UIUserInterfaceIdiomPhone, 
    UIUserInterfaceIdiomPad, 
} UIUserInterfaceIdiom; 
+0

UIUserInterfaceIdiomは、デバイスではなくUIのみを評価します。だからOPがiPadをターゲットにするようにアプリを設定したくない場合(これは私が理解したことだが、普遍的なアプリケーションを作成したくないと言った)、UIUserInterfaceIdiomはiPhoneシミュレータをiPad。 UIDeviceの動作については不明です。たぶん彼は、デバイスが電話を管理できるかどうかを確認することができます。 – Yorxxx

+0

UIDeviceは、シミュレータがシミュレータを提供しても実際のデバイス情報を取得してくれます。 – Mrunal

関連する問題