• IOS 判断设备屏幕尺寸、分辨率


    根据屏幕尺寸和分辨率,ios现在数起来有6个版本。

    iOS 设备现有的分辨率如下:
    iPhone/iPod Touch
    普通屏                           320像素 x 480像素       iPhone 1、3G、3GS,iPod Touch 1、2、3
    3:2 Retina 屏             640像素 x 960像素        iPhone 4、4S,iPod Touch 4
    16:9 Retina 屏               640像素 x 1136像素      iPhone 5,iPod Touch 5

    iPad
    普通屏                  768像素 x 1024像素      iPad 1, iPad2,iPad mini
    Retina屏                  1536像素 x 2048像素     New iPad,iPad 4

    UIDevice+Resolutions.h

    //
    //  UIDevice+Resolutions.h
    //  Test_common
    //
    //  Created by wangzhipeng on 13-1-30.
    //  Copyright (c) 2013年 com.comsoft. All rights reserved.
    //
    
    #import <UIKit/UIKit.h>
    
    enum {
        // iPhone 1,3,3GS 标准分辨率(320x480px)
        UIDevice_iPhoneStandardRes      = 1,
        // iPhone 4,4S 高清分辨率(640x960px)
        UIDevice_iPhoneHiRes            = 2,
        // iPhone 5 高清分辨率(640x1136px)
        UIDevice_iPhoneTallerHiRes      = 3,    
        // iPad 1,2 标准分辨率(1024x768px)
        UIDevice_iPadStandardRes        = 4,    
        // iPad 3 High Resolution(2048x1536px)
        UIDevice_iPadHiRes              = 5               
    }; typedef NSUInteger UIDeviceResolution;
    
    @interface UIDevice (Resolutions){
        
    }
    
    /******************************************************************************
     函数名称 : + (UIDeviceResolution) currentResolution
     函数描述 : 获取当前分辨率
     输入参数 : N/A
     输出参数 : N/A
     返回参数 : N/A
     备注信息 :
     ******************************************************************************/
    + (UIDeviceResolution) currentResolution;
    
    /******************************************************************************
     函数名称 : + (UIDeviceResolution) currentResolution
     函数描述 : 当前是否运行在iPhone5端
     输入参数 : N/A
     输出参数 : N/A
     返回参数 : N/A
     备注信息 :
     ******************************************************************************/
    + (BOOL)isRunningOniPhone5;
    
    /******************************************************************************
     函数名称 : + (BOOL)isRunningOniPhone
     函数描述 : 当前是否运行在iPhone端
     输入参数 : N/A
     输出参数 : N/A
     返回参数 : N/A
     备注信息 :
     ******************************************************************************/
    + (BOOL)isRunningOniPhone;
    
    @end

    UIDevice+Resolutions.m

    //
    //  UIDevice+Resolutions.m
    //  Test_common
    //
    //  Created by wangzhipeng on 13-1-30.
    //  Copyright (c) 2013年 com.comsoft. All rights reserved.
    //
    
    #import "UIDevice+Resolutions.h"
    
    @implementation UIDevice (Resolutions)
    
    /******************************************************************************
     函数名称 : + (UIDeviceResolution) currentResolution
     函数描述 : 获取当前分辨率
     
     输入参数 : N/A
     输出参数 : N/A
     返回参数 : N/A
     备注信息 :
     ******************************************************************************/
    + (UIDeviceResolution) currentResolution {
        if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone){
            if ([[UIScreen mainScreen] respondsToSelector: @selector(scale)]) {
                CGSize result = [[UIScreen mainScreen] bounds].size;
                result = CGSizeMake(result.width * [UIScreen mainScreen].scale, result.height * [UIScreen mainScreen].scale);
                if (result.height <= 480.0f)
                    return UIDevice_iPhoneStandardRes;
                return (result.height > 960 ? UIDevice_iPhoneTallerHiRes : UIDevice_iPhoneHiRes);
            } else
                return UIDevice_iPhoneStandardRes;
        } else
            return (([[UIScreen mainScreen] respondsToSelector: @selector(scale)]) ? UIDevice_iPadHiRes : UIDevice_iPadStandardRes);
    }
    
    /******************************************************************************
     函数名称 : + (UIDeviceResolution) currentResolution
     函数描述 : 当前是否运行在iPhone5端
     输入参数 : N/A
     输出参数 : N/A
     返回参数 : N/A
     备注信息 :
     ******************************************************************************/
    + (BOOL)isRunningOniPhone5{
        if ([self currentResolution] == UIDevice_iPhoneTallerHiRes) {
            return YES;
        }
        return NO;
    }
    
    /******************************************************************************
     函数名称 : + (BOOL)isRunningOniPhone
     函数描述 : 当前是否运行在iPhone端
     输入参数 : N/A
     输出参数 : N/A
     返回参数 : N/A
     备注信息 :
     ******************************************************************************/
    + (BOOL)isRunningOniPhone{
        return (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone);
    }
    
    @end
  • 相关阅读:
    SpringBoot详细研究-01基础
    JDK1.8快速入门
    海外酒店业务学习
    NOSQL快速入门
    移动前端技术快速入门
    Spring快速入门
    Java基础组件快速入门
    JavaWeb快速入门
    TLS 与 python thread local
    python 类修饰器
  • 原文地址:https://www.cnblogs.com/thefeelingofsimple/p/2883340.html
Copyright © 2020-2023  润新知