Skip to content

Instantly share code, notes, and snippets.

@phynet
Last active October 2, 2017 16:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save phynet/869b18b2da8ad297d2958d6479407c28 to your computer and use it in GitHub Desktop.
Save phynet/869b18b2da8ad297d2958d6479407c28 to your computer and use it in GitHub Desktop.
#import "UIScreen+SizeScreenDevice.h"
#import "DeviceUtil.h"
//#warning [DeviceUtil hardware]
// pod DeviceUtil shows all iOS sizes...
typedef NS_ENUM(NSUInteger, DEVICE){
IPHONE4_4S,
IPHONE5_5S,
IPHONE6_6S_7,
IPHONE6_6S_7_PlUS,
NOT_SUPPORTED
};
@implementation UIScreen (SizeScreenDevice)
- (double)getSizeDeviceForMarginIcon{
DEVICE device = [self getPhoneType];
switch (device) {
case IPHONE4_4S: return 35;
case IPHONE5_5S: return 35;
case IPHONE6_6S_7: return 0;
case IPHONE6_6S_7_PlUS: return 20;
default:
return 0;
break;
}
}
- (double)getSizeDeviceForIconsInCollectionView{
DEVICE device = [self getPhoneType];
switch (device) {
case IPHONE4_4S: return 35;
case IPHONE5_5S: return 35;
case IPHONE6_6S_7: return 40;
case IPHONE6_6S_7_PlUS: return 40;
default:
return 40;
break;
}
}
- (double)getSizeDeviceForSplashAnimationFrame{
DEVICE device = [self getPhoneType];
switch (device) {
case IPHONE4_4S: return 47;
case IPHONE5_5S: return 47;
case IPHONE6_6S_7: return 20;
case IPHONE6_6S_7_PlUS: return 0;
default:
return 20;
break;
}
}
- (double)getSizeDeviceForSplashAnimationSize{
DEVICE device = [self getPhoneType];
switch (device) {
case IPHONE4_4S: return 123;
case IPHONE5_5S: return 123;
case IPHONE6_6S_7: return 123;
case IPHONE6_6S_7_PlUS: return 225;
default:
return 123;
break;
}
}
- (CGFloat)getSizeDeviceForContactMessageCell{
DEVICE device = [self getPhoneType];
switch (device) {
case IPHONE4_4S: return 230.0;
case IPHONE5_5S: return 230.0;
case IPHONE6_6S_7: return 200.0;
case IPHONE6_6S_7_PlUS: return 260.0;
default:
return 150;
break;
}
}
- (CGFloat)getSizeDeviceForFontInCalendar {
DEVICE device = [self getPhoneType];
switch (device) {
case IPHONE4_4S: return 14.0;
case IPHONE5_5S: return 14.0;
case IPHONE6_6S_7: return 16.0;
case IPHONE6_6S_7_PlUS: return 17.0;
default:
return 17;
break;
}
}
- (DEVICE)getPhoneType{
CGRect screenBounds = [[UIScreen mainScreen] bounds];
CGFloat size = screenBounds.size.height;
if (size == 480) return IPHONE4_4S;//iphone 4/4s
if (size == 568) return IPHONE5_5S; //iphone 5
if (size == 667) return IPHONE6_6S_7;//iphone 6
if (size == 736) return IPHONE6_6S_7_PlUS;//iphone 6+
if (size == 736) return IPHONE6_6S_7_PlUS;//iphone 6+
return NOT_SUPPORTED;
}
@end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment