简体   繁体   中英

Images inaccessible from asset catalog in a SwiftUI framework

I've created an iOS framework that contains a single SwiftUI View . I've then added an Asset Catalog with a single image. Trying to access that image from the SwiftUI view doesn't do anything - I see a blank image.

Image("MyImage")

The Xcode Preview doesn't show anything, nor does the view show anything for a test target I wrote that uses the framework.

So the question is - how do I bundle images with a framework that uses SwiftUI? Is this not supported? The only way I could get this to work was to move the image to the test target's asset catalog instead. Unfortunately this means that I cannot preview the designs I'm working on when developing the framework.

By default

Image("MyImage") is Image("MyImage", bundle: Bundle.main)

ie. in bundle of application.

You have to explicitly specify bundle (of framework) in which Assets catalog is located, as

Image("MyImage", bundle: bundle)

where bundle is instantiated in usual way by class or identifier.

backup

Yes, you can load a custom image or custom SF Symbol within a Swift Package.

The SwiftUI invocation is:

Image(“my-symbol-name“, bundle: .module)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM