0
我需要從它的類名實例化一個類。我在Swift 3中可以正常工作,但在轉換爲Swift 4之後,我無法再繼續工作了。我曾嘗試使用NSClassFromString(_:)
與"MyApp.MyClass"
和"_TtC5MyApp7MyClass"
但沒有成功。而且我也嘗試使用Bundle.main.classNamed(_:)
函數。我甚至在MyClass
的類聲明上面添加了@objc(MyBaseClass)
以將其公開到Objective-C。 MyClass
派生自MyBaseClass
。無法在Swift 4中使用NSClassFromString工作
我不明白爲什麼這不起作用,請幫忙。提前致謝!
請向我們展示一個[mcve]。 – Hamish
「我需要從它的類名實例化一個類」這是一種難聞的氣味。你能展示你的用例嗎?也許有更好的方法。 – matt
我的應用程序從一個plist中讀取了幾個餐廳,這些餐館都有一個id特性以及一些其他信息,例如,營業時間。這個id引用了一個從Restaurant類派生的具有相同名稱的類。這些類中的每一個都會進行一些網頁抓取以檢索當前的午餐。我知道創建一個完成所有繁重工作的Web服務可能會更好,但現在我想使用這個解決方案。否則,我可能不得不爲VPS付費。 –