6

プログラムで画面サイズをインチ単位で取得するにはどうすればよいですか (たとえば、iPhone 4、3.5 インチ)。

iPhone/iPadのモデルを検出する方法を見つけましたが、ハードコーディングは私が望んでいるものではないので、そのようなものは見ていません。

4

4 に答える 4

5

「GBDeviceInfo」と呼ばれる素敵な GitHub プロジェクトを見つけました。

if ([GBDeviceInfo deviceDetails].display == GBDeviceDisplayiPhone35Inch) {
    //3.5 inch iphone
}
else if ([GBDeviceInfo deviceDetails].display == GBDeviceDisplayiPhone4Inch) {
    //4 inch iphone
}
else if ([GBDeviceInfo deviceDetails].display == GBDeviceDisplayiPad) {
    //ipad
}

ここに「GBDeviceInfo 」があります

于 2013-01-25T07:41:09.953 に答える
4

これは、デバイスの対角線の画面サイズを見つけます:

float scale = [[UIScreen mainScreen] scale];

float ppi = scale * ((UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) ? 132 : 163);

float width = ([[UIScreen mainScreen] bounds].size.width * scale);
float height = ([[UIScreen mainScreen] bounds].size.height * scale);

float horizontal = width / ppi, vertical = height / ppi;

float diagonal = sqrt(pow(horizontal, 2) + pow(vertical, 2));

diagonal画面の対角サイズ (インチ単位) が含まれます。

于 2013-01-25T08:27:34.590 に答える