网站搭建系列教程,网上购书的网站开发的意义,100部看黄禁用免费入口,定制公司网站建设1、截至目前为止#xff0c;主流的iOS设备屏幕有以下几种#xff1a; --------------- iPhone ---------- -------- iPad ------------ 2、iOS设备屏幕分辨率#xff1a;#xff08;ppi是像素密度单位【像素/英寸】#xff0c;401ppi表示每英寸上有401个像素#xff0…1、截至目前为止主流的iOS设备屏幕有以下几种 --------------- iPhone ---------- -------- iPad ------------ 2、iOS设备屏幕分辨率ppi是像素密度单位【像素/英寸】401ppi表示每英寸上有401个像素 ppi(pixel per inch)计算以6Plus为例 屏幕分辨率1920 x 1080, 屏幕尺寸5.5英寸(手机屏幕对角物理线的长度) 1920 x 1920 1080 x 1080 4852800, 开根号为2202.907... 2202.907 / 5.5 400.528 ppi 大约就是401ppi 3、iOS的三种分辨率 1、资源分辨率资源图片的大小单位是像素。 2、设计分辨率逻辑上的屏幕大小单位是点。我们在Interface Builder设计器中的单位和程序代码中的单位都是设计分辨率中的“点”。 3、是以像素为单位的屏幕大小所有的应用都会渲染到这个屏幕上展示给用户。 iPhone 6 Plus和 6S Plus是最为特殊的设备资源分辨率与屏幕分辨率的比例是1.15 : 1, 而其他的设备比例是1 : 1。不同的人群关注的分辨率也是不同的UI设计人员主要关注的是资源分辨率开发人员主要关注的是设计分辨率而一般用户主要关注的屏幕分辨率。 4、获取设备屏幕信息 获取当前移动设备对象[UIDevice currentDevice] UIDevice类所有信息 NS_CLASS_AVAILABLE_IOS(2_0) interface UIDevice : NSObject (UIDevice *)currentDevice;property(nonatomic,readonly,strong) NSString *name; // e.g. My iPhone
property(nonatomic,readonly,strong) NSString *model; // e.g. iPhone, iPod touch
property(nonatomic,readonly,strong) NSString *localizedModel; // localized version of model
property(nonatomic,readonly,strong) NSString *systemName; // e.g. iOS
property(nonatomic,readonly,strong) NSString *systemVersion; // e.g. 4.0
property(nonatomic,readonly) UIDeviceOrientation orientation __TVOS_PROHIBITED; // return current device orientation. this will return UIDeviceOrientationUnknown unless device orientation notifications are being generated.property(nullable, nonatomic,readonly,strong) NSUUID *identifierForVendor NS_AVAILABLE_IOS(6_0); // a UUID that may be used to uniquely identify the device, same across apps from a single vendor.property(nonatomic,readonly,getterisGeneratingDeviceOrientationNotifications) BOOL generatesDeviceOrientationNotifications __TVOS_PROHIBITED;
- (void)beginGeneratingDeviceOrientationNotifications __TVOS_PROHIBITED; // nestable
- (void)endGeneratingDeviceOrientationNotifications __TVOS_PROHIBITED;property(nonatomic,getterisBatteryMonitoringEnabled) BOOL batteryMonitoringEnabled NS_AVAILABLE_IOS(3_0) __TVOS_PROHIBITED; // default is NO
property(nonatomic,readonly) UIDeviceBatteryState batteryState NS_AVAILABLE_IOS(3_0) __TVOS_PROHIBITED; // UIDeviceBatteryStateUnknown if monitoring disabled
property(nonatomic,readonly) float batteryLevel NS_AVAILABLE_IOS(3_0) __TVOS_PROHIBITED; // 0 .. 1.0. -1.0 if UIDeviceBatteryStateUnknownproperty(nonatomic,getterisProximityMonitoringEnabled) BOOL proximityMonitoringEnabled NS_AVAILABLE_IOS(3_0); // default is NO
property(nonatomic,readonly) BOOL proximityState NS_AVAILABLE_IOS(3_0); // always returns NO if no proximity detectorproperty(nonatomic,readonly,getterisMultitaskingSupported) BOOL multitaskingSupported NS_AVAILABLE_IOS(4_0);property(nonatomic,readonly) UIUserInterfaceIdiom userInterfaceIdiom NS_AVAILABLE_IOS(3_2);- (void)playInputClick NS_AVAILABLE_IOS(4_2); // Plays a click only if an enabling input view is on-screen and user has enabled input clicks.end ios移动设备类型枚举判断 typedef NS_ENUM(NSInteger, UIUserInterfaceIdiom) {UIUserInterfaceIdiomUnspecified -1,UIUserInterfaceIdiomPhone NS_ENUM_AVAILABLE_IOS(3_2), // iPhone and iPod touch style UIUIUserInterfaceIdiomPad NS_ENUM_AVAILABLE_IOS(3_2), // iPad style UIUIUserInterfaceIdiomTV NS_ENUM_AVAILABLE_IOS(9_0), // Apple TV style UI
}; [UIDevice currentDevice].userInterfaceIdiom UIUserInterfaceIdiomPhone // 表示iPhone设备 [UIDevice currentDevice].userInterfaceIdiom UIUserInterfaceIdiomPad // 表示iPad设备 [UIDevice currentDevice].userInterfaceIdiom UIUserInterfaceIdiomTV // 表示Apple TV设备 [UIDevice currentDevice].userInterfaceIdiom UIUserInterfaceIdiomUnspecified // 表示未知设备 //示例详细判断iPhone设备类型 //详细判断iPhone设备信息, 区分横屏和竖屏if ([UIDevice currentDevice].userInterfaceIdiom UIUserInterfaceIdiomPhone){//获取屏幕尺寸信息CGSize screenSize [UIScreen mainScreen].bounds.size;//竖屏情况if (screenSize.height screenSize.width){if (screenSize.height 568){//iPhone 5/5S/5C (iPod / iPod touch) 等设备}else if (screenSize.height 667){//iPone 6 / 6S 等设备}else if (screenSize.height 736){//iPone 6 Plus / 6S Plus 等设备}else{//iPhone 4 / 4S 等设备}}//横屏情况if (screenSize.width screenSize.height){if (screenSize.width 568){//iPhone 5/5S/5C (iPod / iPod touch) 等设备}else if (screenSize.width 667){//iPone 6 / 6S 等设备}else if (screenSize.width 736){//iPone 6 Plus / 6S Plus 等设备}else{//iPhone 4 / 4S 等设备}}} //说明在iPad和iPhone屏幕中一般会有状态栏、标签栏、导航栏或工具栏以及内容视图部分它们的尺寸也是固定的。状态栏占20点导航栏占44点标签栏占49点。 ppipixel per inch: 表示每英寸所包含的像素点数目数值越高屏幕能以更高密度显示图像 dprdevice pixel ratio: 设备像素比设备像素 / 设备独立像素表示设备独立像素到设备像素的转换关系 版权声明 作者TDX 出处博客园TDX的技术博客--http://www.cnblogs.com/tandaxia 您的支持是对博主最大的鼓励感谢您的认真阅读。 本文版权归作者和博客园共有欢迎转载但未经作者同意必须保留此段声明且在文章页面明显位置给出原文连接否则保留追究法律责任的权利。 转载于:https://www.cnblogs.com/tandaxia/p/5060123.html