检查 iOS 7 或更早版本的最佳方法? [复制]

2024-04-17

我需要根据我运行的 iOS 版本重新配置一些 UI,因此我需要一种检查 iOS 版本的好方法。目前我正在这样做:

if ([[[UIDevice currentDevice] systemVersion] isEqualToString: @"7.0"]) {
    //do stuff
}

我不想对这些字符串比较进行硬编码并据此做出决定。有更好的方法吗?


我总是将它们保存在 Constants.h 文件中:

#define IS_IPHONE5 (([[UIScreen mainScreen] bounds].size.height-568)?NO:YES) 
#define IS_OS_5_OR_LATER    ([[[UIDevice currentDevice] systemVersion] floatValue] >= 5.0)
#define IS_OS_6_OR_LATER    ([[[UIDevice currentDevice] systemVersion] floatValue] >= 6.0)
#define IS_OS_7_OR_LATER    ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0)
#define IS_OS_8_OR_LATER    ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0)
#define IS_OS_9_OR_LATER    ([[[UIDevice currentDevice] systemVersion] floatValue] >= 9.0)

虽然我总是更喜欢上面的宏,但为了完成接受的答案,这是苹果批准的方式:

if (NSFoundationVersionNumber > NSFoundationVersionNumber_iOS_6_1) {

    // do stuff for iOS 7 and newer

}
else {

    // do stuff for older versions than iOS 7
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检查 iOS 7 或更早版本的最佳方法? [复制] 的相关文章

随机推荐

  • Swift - 从 ISO8601 日期字符串检索时区

    我以这种格式保存在数据库中的日期 yyyy MM dd T HH mm ssZ 例如 2018 05 17T11 15 00 0330 时区有所不同 以用户本地时区为准 我想检索并显示日期 如 2018 年 5 月 17 日上午 11 点
  • 选择 Scala Web 框架 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 每页新/更新图标

    认为有人可能知道那里的脚本 或者知道如何更新网站每个部分的图标 我正在开发的构建的每个部分都有强烈的颜色 我认为根据您所在的部分更新图标的颜色可能是一个很好的 UI 风格 这些可能是一系列图标 但会强制进行更改 而不仅仅是在每个部分中添加
  • 使用C++访问桌面上的文件

    我使用的是 Windows 7 我在桌面上创建了一个名为test txt 如何使用 C 访问该文件 例如 考虑以下代码 include
  • Jprofile可以连接到docker中运行的JVM

    我是 JProfiler 的新手 我最近遇到了一个问题 我的Java应用程序在docker中运行 这意味着JVM在docker中运行 但我的jprofile安装在主机上 我知道 jprofiler 必须连接到 JVM 那么 jprofile
  • 如何在不设置完整路径的情况下访问 C++ 中的资源

    我希望在程序中访问我的资源 但我不想使用包括 C Users USER EXAMPLE 的完整路径 在 java 中 可以选择使用 getClass getResources Folder test txt 我想做的事情是读取和写入文件 而
  • 关闭 JSP 时调用操作

    我是java网络世界的新手 所以如果我说一些愚蠢的话请原谅我 我正在使用 struts 2 当 jsp 关闭时 我需要删除一个文件 位于服务器上 有谁知道该怎么做吗 提前致谢 The window onunload建议很好 但不能保证 aj
  • Excel 2007 VBA问题设置轴标题

    我需要帮助在 Excel 2007 VBA 中设置 X 轴和 Y 轴标题 它一直抱怨 需要对象 Sub macro2 Dim xAxis As Axis icount 1 Charts Add Charts icount Name iske
  • 从基类指针访问派生私有成员函数到派生对象[重复]

    这个问题在这里已经有答案了 可能的重复 为什么我可以通过指向派生对象的基类指针访问派生私有成员函数 https stackoverflow com questions 3610936 why can i access a derived p
  • 如何设置IntelliJ IDEA项目SDK

    我刚刚安装了 IntelliJ IDEA 当我尝试创建我的第一个项目时 它要求我设置项目 SDK 当我单击 JDK 时 它要求我选择 JDK 的主目录 如下图所示 我无法找到它在哪里 对于新项目 选择 jdk 的主目录 eg C Java
  • 如何使用 tf2 为 seq2seq 构建自定义双向编码器?

    class Encoder tf keras Model def init self vocab size embedding dim enc units batch sz super Encoder self init self batc
  • 禁用 Android 幼儿应用程序中的主页按钮?

    我开发了一个应用程序 它是一个图片幻灯片放映 当您点击它们时 每个图片都会播放声音 这就像一本适合2 4岁孩子的图画书 问题是 由于 Android 不会让您捕获按下主页按钮并基本上禁用它 因此当父母将手机交给孩子与无人看管 勇敢的父母 一
  • 非 Spring Boot 应用程序中的 hystrix @EnableCircuitBreaker

    我有一个基于应用程序上下文 xml 文件的简单 spring 项目 非 spring boot 如何为我的客户端使用 EnableCircuitBreaker 以便在我的 RestTemplate 中使用 hystrix 命令进行回退 En
  • 接口注入和公共类

    我正在尝试了解 OOP 原则并编写自己的类 作为一种学习方法 我决定将我在 Wordpress 中编写的几个函数转换为 OOP 类 这些函数协同工作 以便根据 URL 中设置的引荐来源网址 其中 4 个 在单个页面上输出正确的帖子链接 这是
  • Javascript/jQuery 仅在浏览器后退/前进按钮单击时检测哈希更改

    是否可以仅在浏览器历史记录更改 即 后退 或 前进 按钮 时检测哈希更改 我已经看到了 onBeforeUnload 事件 但该事件不会在哈希更改时触发 因为窗口未卸载 hashchange 事件显然会在哈希值发生变化时触发 有什么解决办法
  • Heroku 上的“bin/rails:没有这样的文件或目录”w/ Ruby 2 & Rails 4

    在遵循 Rails 4 的同时Beta迈克尔 哈特尔的版本Ruby on Rails 教程 http ruby railstutorial org ruby on rails tutorial book version 4 0 top 我的
  • 将 pandas 数据框中的上标符号导出到 csv 或 excel

    我想写下下面的内容 到 csv 文件 df loc 0 Total 2000 numpy nan numpy nan numpy nan 2 0 1 6 10 6 km 2 有没有办法在以 6 是 10 的上标 2 是 km 的上标的格式编
  • 如何在UIScrollView中实现scrollViewDidScroll

    我遇到一个问题 当我打电话时scrollViewDidScroll我的子类中的方法UIScrollView什么都没发生 这是我的代码 AppDelegate m import ScrollView h BOOL application UI
  • COM接口指南

    我不太喜欢 COM 接口 所以我有一个小问题 假设我有这段代码 Guid 148BD528 A2AB 11CE B11F 00AA00530503 InterfaceType ComInterfaceType InterfaceIsIUnk
  • 检查 iOS 7 或更早版本的最佳方法? [复制]

    这个问题在这里已经有答案了 我需要根据我运行的 iOS 版本重新配置一些 UI 因此我需要一种检查 iOS 版本的好方法 目前我正在这样做 if UIDevice currentDevice systemVersion isEqualToS