检测iOS设备类型

2024-05-27

在我的应用程序(用 Objective-C 编写)中,如何检测设备是 iPhone、iPad 还是 iPhone5?

if([[UIDevice currentDevice]userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
    // [iphone] or [itouch]
} else {
    // [ipad]
}

您可以轻松检测具有以下条件的 iphone、iphone 5 和 iPad(但不是 iTouch!iTouch 被视为具有此代码的 iPhone!):-

 if([[UIDevice currentDevice]userInterfaceIdiom]==UIUserInterfaceIdiomPhone)
 {
     if ([[UIScreen mainScreen] bounds].size.height == 568)
     {


     }
     else
     {
         //iphone 3.5 inch screen
     }
 }
 else
 {
        //[ipad]
 }

UPDATE

您还可以使用宏或定义变量来检查 iPhone 5、iPhone 4 或 iPad,如下所示:-

#define isiPhone5  ([[UIScreen mainScreen] bounds].size.height == 568)?TRUE:FALSE
#define isiPhone  (UI_USER_INTERFACE_IDIOM() == 0)?TRUE:FALSE

例子:-

if(isiPhone)
     {
         if (isiPhone5)
         {


         }
         else
         {
             //iphone 3.5 inch screen
         }
     }
     else
     {
            //[ipad]
     }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检测iOS设备类型 的相关文章

随机推荐

  • 你们中有多少人进行三层设计?

    多年来 三层设计一直是我数据库驱动应用程序的标准设计理念 它从未让我失望过 对于那些练习它的人 描述一下你的层次 我发现很多人混淆了业务层和数据访问层 使其更像是 2 5 层设计 我更喜欢使用存储过程将数据层几乎完全移动到数据库中 并且在代
  • WKWebView 上的链接点击侦听器?

    WKWebView 类中是否存在类似 onLinkClickListener 的东西 我尝试用谷歌搜索但一无所获 我还在类似类型的 stackoverflow 上发现了一些未解答的问题 我需要 linkClickListener 的原因是
  • 返回具有关联类型的特征

    struct A struct PropA struct B struct PropB trait AB type prop fn a self gt fn b self p Self prop gt impl AB for A type
  • oracle嵌套表的最大行数是多少

    CREATE TYPE nums list AS TABLE OF NUMBER Oracle 嵌套表中最大可能的行数是多少 UPDATE CREATE TYPE nums list AS TABLE OF NUMBER CREATE OR
  • 在大文件中查找重复项

    我有一个非常大的文件 大约有 1500 万个条目 文件中的每一行都包含一个字符串 称为键 我需要使用 java 查找文件中的重复条目 我尝试使用哈希图并检测重复的条目 显然 这种方法向我抛出了 java lang OutOfMemoryEr
  • phpunit 中的组/过滤器不执行特定的测试用例

    我有一个套件 它调用多个套件和许多用于日志 报告和执行的函数 如果我尝试相同的 组或过滤器 模式 它会执行所有测试用例 而不执行选定的单个测试用例 Edit 我正在使用数组套件 如下所示 suite gt addTestSuite admi
  • Sublime 2 text - 在保存 .js 文件期间构建

    请问 当我尝试保存 js 文件时 是否有一个选项如何禁用自动构建 我正在详细阐述 Node js Express 教程 并且一直保存文件 构建一直在启动 Node exe 二进制文件 这是我不想要的 唯一的解决方案是勾选构建系统 例如对于
  • PowerShell:使用 Invoke-Expression 管理错误

    我尝试弄清楚如何确定使用 Invoke Expression 的命令抛出是否失败 即使变量 LASTEXITCODE 或 ErrorVariable 也对我没有帮助 例如 PS C gt cmd cat c xxx txt 使用 Invok
  • 将json解析为条形图d3js

    我正在尝试使用 json url 创建条形图 关于印象和时间 我认为我没有正确引用 data data 中的数据 如何从 d3 中的 json 文件访问印象字段 var url https script google com macros
  • 如何使用多个问号“?”一个语句中的冒号“:”在javascript中被解释? (条件运算符)

    我知道简单的条件语句是如何解释的 比如 condition expr1 expr2 但我想知道这样的说法该如何解读 function arc return da gt d3 svg arcMax r0 String1 String2 r0
  • WCF 数据服务错误处理

    我创建了一个带有服务操作的WCF数据服务 我想生成一种业务异常 我尝试生成WebFaultException但我不知道当服务操作抛出此错误时如何在客户端捕获此错误 这是我模拟异常的服务操作 WebGet public void Genera
  • void_t 在 Visual Studio 2015 上失败

    我不明白为什么 Visual Studio 2015 的以下测试总是失败 static assert 触发器 include
  • 具有多个页面的 UITableViewController 和 ContentViewController 之间的交换日期

    我正在开发一个应用程序 在该应用程序中 我需要通过单击 tableviewcontroller 中的 tableview 单元格 它是初始视图控制器 将一组值传递到具有页面卷曲转换的 contentview 视图控制器 每个页面都有一个文本
  • 自定义 UITabBar 背景图像在 iOS 5 及更高版本中不起作用

    我有一段简单的代码 可以在 tabBar 上放置背景图像 UIImageView imageView UIImageView alloc initWithImage UIImage imageNamed tabBG png self tab
  • ckeditor 数据未通过 jQuery 验证进行验证

    我知道有很多关于此的问题 但我无法让它在我的一生中发挥作用 我尝试了几种解决方案 包括this http devlog waltercruz com usando ckeditor e jquery validate juntos 第二个答
  • JavaScript CRC32

    我正在寻找一个modernCRC32 的 JavaScript 实现 本次实施 https stackoverflow com questions 8353134 javascript crc32 function and php crc3
  • Eclipse 优化导入以包含静态成员和方法

    长期使用 eclipse 和 Java 我在 Eclipse 中发现的一个问题是 似乎没有一种简单的方法来导入静态成员和方法 即 jUnitfail 方法来自org junit Assert 我每天创建几个类 然后手动添加 import s
  • Lombok @Builder 和 JPA 默认构造函数

    我将 Lombok 项目与 Spring Data JPA 一起使用 有什么办法可以连接龙目岛 Builder使用 JPA 默认构造函数 Code Entity Builder class Person Id GeneratedValue
  • 如何求真实数据的概率分布和参数? (Python 3)

    我有一个数据集来自sklearn我绘制了分布load diabetes target数据 即回归值load diabetes data用于预测 我使用它是因为它的回归变量 属性数量最少sklearn datasets 使用Python 3
  • 检测iOS设备类型

    在我的应用程序 用 Objective C 编写 中 如何检测设备是 iPhone iPad 还是 iPhone5 if UIDevice currentDevice userInterfaceIdiom UIUserInterfaceId