public void CheckOrientation() { //ratio check switch (orientation) { case DeviceOrientation.LandscapeLeft: case DeviceOrientation.LandscapeRight: if (Camera.main.aspect > 1.85f) { ratio = DisplayRatioOption.IPHONEX; UpdatePrevious(); } else if (Camera.main.aspect > 1.5f) { ratio = DisplayRatioOption.IPHONE; UpdatePrevious(); } else if (Camera.main.aspect > 1f) { ratio = DisplayRatioOption.IPAD; UpdatePrevious(); } break; case DeviceOrientation.Portrait: case DeviceOrientation.PortraitUpsideDown: if (Camera.main.aspect <= 1f) { if (Camera.main.aspect >= .7f) { ratio = DisplayRatioOption.IPAD; UpdatePrevious(); } else if (Camera.main.aspect >= .5f) { ratio = DisplayRatioOption.IPHONE; UpdatePrevious(); } else { ratio = DisplayRatioOption.IPHONEX; UpdatePrevious(); } } break; } previousAspect = Camera.main.aspect; }
private void UpdatePrevious() { if (Application.isEditor) { if (previousAspect != Camera.main.aspect) { OnRatioChanged(ratio); previousRatio = ratio; } } else if (ratio != previousRatio) { OnRatioChanged(ratio); previousRatio = ratio; } }
private void OnRatioChanged(DisplayRatioOption option) { if (onIphone == null || onIphoneX == null || onIpad == null) { return; } switch (option) { case DisplayRatioOption.IPHONE: onIphone.Invoke(); break; case DisplayRatioOption.IPHONEX: onIphoneX.Invoke(); break; case DisplayRatioOption.IPAD: onIpad.Invoke(); break; } }