2014-11-17 69 views
0

由於iOS 8中存在UIApplicationOpenSettingsURLString。是否有一個等同於respondsToSelector檢查變量是否存在?

我的應用程序將是iOS7和8.如何檢查常數是否可用(我知道我可以檢查操作系統版本,但有一個更直接的方式?)

+0

以下適用於Objective-C的(約斯威夫特不知道):如果我沒有記錯,如果你使用IOS 8的基礎SDK,但部署對於iOS> = 7,您可以檢查字符串是否爲'nil'(即在運行時,'UIApplicationOpenSettingsURLString'將等於iOS 7中的'nil')。同樣適用於函數名稱(例如'NSLog')。 –

+0

這是一篇涉及此主題的博客文章。 http://www.russbishop.net/swift-respondstoselector – mustafa

回答

0

你可以檢查是否通過查看變量的地址存在的變量:

if (&UIApplicationOpenSettingsURLString != nil) { 
    // UIApplicationOpenSettingsURLString exists 
} else { 
    // don't use UIApplicationOpenSettingsURLString 
} 
+0

它不編譯?!?雖然這個想法聽起來不錯 – theguy

+0

你會得到什麼錯誤? –

+0

@Senior爲什麼不編譯? – Unheilig

相關問題