如何检查iOS中是否存在方法systemFontOfSize(fontSize:weight :)

Joh*_*kon 3 xcode system-font ios ios7 swift

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

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

我使用swift并尝试过

if let font = UIFont.systemFontOfSize(12, weight: UIFontWeightLight) 
Run Code Online (Sandbox Code Playgroud)

要么

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

rin*_*aro 6

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)!
    }
Run Code Online (Sandbox Code Playgroud)

我会推荐HelveticaNeue而不是Helvetica,因为系统字体是 Neue one.