ユニバーサル対応のアプリの場合、デバイス(iPhone, iPad, Retina, …)を判定して、それぞれに応じた処理が必要になる(例えば、レイアウト。ボタンや画像の位置やサイズなど)。
画面サイズからデバイスを判定するサンプルコード(抜粋)。
Unity上で実行しているときは、Gameウィンドウのサイズが画面サイズ(Screen.width, Screen.height)となるので注意が必要。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
public enum IOS_DEVICE_TYPE { NONE = -1, iPhone = 0, iPhoneRetina, iPhone5, iPad, iPadRetina, }; public IOS_DEVICE_TYPE iosDeviceType = IOS_DEVICE_TYPE.NONE; void Start() { SetIOSDeviceType(); print(iosDeviceType); } void SetIOSDeviceType() { iosDeviceType = IOS_DEVICE_TYPE.iPadRetina; int sw = Screen.width; int sh = Screen.height; if(sw > sh) { int tmp = sw; sw = sh; sh = tmp; } if(sw == 320 && sh == 480) // iPhone ? { iosDeviceType = IOS_DEVICE_TYPE.iPhone; } else if(sw == 640 && sh == 960) // iPhone Retina ? { iosDeviceType = IOS_DEVICE_TYPE.iPhoneRetina; } else if(sw == 640 && sh == 1136) // iPhone5 ? { iosDeviceType = IOS_DEVICE_TYPE.iPhone5; } else if(sw == 768 && sh == 1024) // iPad ? { iosDeviceType = IOS_DEVICE_TYPE.iPad; } } |
コメントを残す
コメントを投稿するにはログインしてください。