簡體   English   中英

從 Storyboard 訪問 Swift Package 中的資產目錄

[英]Access Asset Catalog in Swift Package from Storyboard

With the new Swift 5.3 package manager, it's possible for a Swift package to vend out images from an Asset catalog. 假設我有一個名為“ImageLibrary”的 package,其中包含我希望在許多項目之間共享的圖像資產。

現在我有了我的主應用程序項目,我導入了 Swift package。 在我的 storyboard 中,XCode 讓我 select 圖像來自我的庫“ImageLibrary”中的資產目錄。 但是,在運行時無法找到圖像,因為它們存在於與 storyboard 不同的包中。

我能找到的唯一解決方案是將圖像資源庫從“ImageLibrary”Swift package 拖到我的“復制捆綁資源”列表中。 這確實有效。 圖像最終出現在應用程序的包中,並在運行時出現。

問題是,如果我的 Swift package 被遠程存儲庫鏈接引用,XCode 將檢查代碼並在派生數據文件夾中進行深入編譯。 “復制捆綁資源”鏈接將指向該文件夾。 現在 XCode 項目文件有一個鏈接,其中包含特定於我的硬盤的信息。 與一個龐大的團隊當然行不通。

我可以使用本地 Swift package 來解決這個問題,但我預計持續集成工具等也會出現類似問題。 我懷疑這只是 Swift 軟件包不打算做的事情,而且我不走運。

感謝您的任何想法,西蒙。

您可以采取的一種方法是在 Swift package 中聲明使用資產目錄中的圖形初始化的公共UIImage 然后UIImage將可用於您的主應用程序項目。 這種方法適用於遠程 Swift 包以及本地 Swift 包,只要您能夠自己編輯 Swift ZEFE90A8E604A7C840E8A 代碼以更新它8源代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM