2014-10-16 29 views
10

我在斯威夫特應用程序中使用第三方斯威夫特框架非常頻繁,想用它,而無需在每一個斯威夫特文件一遍又一遍寫import ModuleName隱式導入特定斯威夫特模塊

是否有指定默認的進口喜歡使用.pch文件在Objective-C是可能的一種方式?

我已經選中的Xcode構建設置和swiftc標誌,但他們沒有提供這個功能。

回答

32

其實有一個很簡單的解決方法我能想到前面...

只需添加以下到您的應用項目的Objective-C的橋接報:

@import ModuleName; 

斯威夫特將它撿起來呢!在您打算使用該模塊的每個Swift文件中不需要import ModuleName

+0

工程就像一個魅力。謝謝!如果正在創建的目標是依賴於其他模塊銜接頭迅捷的框架是不允許的 – 2015-03-27 12:38:05

+1

將無法​​正常工作。對於框架,似乎沒有任何功能或解決方法來實現相同的結果。但我習慣了:) – 2016-02-19 12:02:55

+3

@MaxMacLeod沒錯這隻適用於應用程序的目標 – fluidsonic 2016-02-19 13:42:49

3

不,沒有Swift模擬Objective-C .pch文件。

人們可以通過創建一個傘目標框架,包括一些其他模塊的表面上降低進口語句的數量,但有沒有辦法避免依賴模塊的明確進口顧左右而言他。

+2

感謝您的回答mattt。我想你是正確的,在Swift中沒有標準的方法來做到這一點。但是我發現了一種通過在ObjC的橋接頭中使用'@ import'實現相同結果的方法! – fluidsonic 2014-10-17 13:52:34

+0

SWIFT已'.swiftmodule'檔案是可導入的,當一個提供其目錄名作爲FO swiftc'的''的參數-I'的值。 [SWM(Swift模塊)](http://github.com/jankuca/swm)可以幫助你很多。 – 2014-12-13 11:10:47