プログラムで画面サイズをインチ単位で取得するにはどうすればよいですか (たとえば、iPhone 4、3.5 インチ)。
iPhone/iPadのモデルを検出する方法を見つけましたが、ハードコーディングは私が望んでいるものではないので、そのようなものは見ていません。
プログラムで画面サイズをインチ単位で取得するにはどうすればよいですか (たとえば、iPhone 4、3.5 インチ)。
iPhone/iPadのモデルを検出する方法を見つけましたが、ハードコーディングは私が望んでいるものではないので、そのようなものは見ていません。
「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
}
これは、デバイスの対角線の画面サイズを見つけます:
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
画面の対角サイズ (インチ単位) が含まれます。