1

デバイスの種類の識別に問題があります。

iPhone 4 を接続すると、「is iPhone 4」と印刷されます。

iPhone 5 または 5 s を接続すると、「is iPhone 5」と印刷されます。

iPhone 6 plus を接続すると「is iPhone 6 plus」と表示されます

問題は次のとおりです。

iPhone 6 を接続すると、「 is iPhone 5 」と印刷されます。

これはサンプルコードです:

- (void)viewDidLoad {
[super viewDidLoad];

[self print];

}


-(void)print

{
#define isIphone4  ([[UIScreen mainScreen] bounds].size.height == 480)?TRUE:FALSE

if (isIphone4)
{
    NSLog(@"is iphone 4");
}


#define isIphone5  ([[UIScreen mainScreen] bounds].size.height == 568)?TRUE:FALSE

if (isIphone5)
{
    NSLog(@"is iphone 5");
}

#define isIphone6  ([[UIScreen mainScreen] bounds].size.height == 667)?TRUE:FALSE

if (isIphone6)
{
    NSLog(@"is iphone 6");
}

#define isIphone6plus  ([[UIScreen mainScreen] bounds].size.height == 736)?TRUE:FALSE

if (isIphone6plus)
{
    NSLog(@"is iphone 6 plus");
}

}

何が問題なのですか??

編集 :

LaunchImage を追加します。

ここに画像の説明を入力

そして印刷はまだ「iPhone 5です」

4

1 に答える 1

1

アプリ バンドルに @3x ウェルカム画面を含めない場合。iPhone 5 と同じように画面サイズを考慮し、インターフェイスをアップスケールします。多分それはあなたの問題です

于 2014-12-17T15:21:30.643 に答える