ios - 如何检查方法 systemFontOfSize(fontSize : weight:) exist in iOS

标签 ios xcode swift ios7 system-font

我的应用程序部署目标是 iOS 7.0 我想在装有 iOS 8+ 的设备上使用方法 systemFontOfSize(fontSize: weight:)。 iOS 7 不支持此方法(使用 weight: 参数)并且我的应用程序崩溃了。特别是对于 iOS 7,我想设置 Helvetica Light 字体而不是 SystemFont Light。

检查它的最佳方法是什么?我需要检查iOS版本还是可以检查方法?怎么办?

我用swift并试过

if let font = UIFont.systemFontOfSize(12, weight: UIFontWeightLight) 

respondsToSelector 方法。 它对我不起作用。

最佳答案

respondsToSelector 按预期工作:

    let font: UIFont
    if UIFont.respondsToSelector("systemFontOfSize:weight:") {
        println("YES")
        font = .systemFontOfSize(12, weight: UIFontWeightLight)
    }
    else {
        println("NO")
        font = UIFont(name: "HelveticaNeue-Light", size: 12)!
    }

而且我会推荐 HelveticaNeue 而不是 Helvetica,因为系统字体是 Neue 一种。

关于ios - 如何检查方法 systemFontOfSize(fontSize : weight:) exist in iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32497855/

相关文章:

ios - 为什么我不能在 XCode 4.1 中运行该项目?

swift - 创建 xcframework 时无法从其模块接口(interface)构建模块 'XXX'

ios - 当我返回时自定义 tableview 单元格没有取消选择?

ios - 将框架和应用程序扩展目标添加到 IOS 应用程序项目,我做得对吗?

swift - 如何重新加载 ui View 的内容 Swift

ios - Obj-C持久性和动态类型检查

ios - 用数据填充核心数据模型

android - 当应用程序不在 Play 商店或应用商店时,如何自动将 Flutter Mobile 应用程序更新到较新版本?

xcode - 如何为 Xcode UI 测试禁用沙箱

ios - 如何通过单击 tableview 单元格上的按钮来获取文档 ID?